大学のクラスターをどのように使用するかを考えているところです。2 つのバージョンの R がインストールされています。システム全体の R 2.11 (Debian 6.0) および R 2.14.2 が非標準の場所にあります。
MPI を Snow と一緒に使用しようとしています。私が実行しようとしているコードは次のとおりです
library(snow)
library(Rmpi)
cl <- makeMPIcluster(mpi.universe.size()-1)
stopCluster(cl)
mpi.quit()
R 2.11 では問題なく動作します。(私はスクリプトを起動しますmpirun -H localhost,n1,n2,n3,n4 -n 1 R --slave -f code.R
)。R 2.14.2 で実行しようとすると、次のメッセージが表示されます。
Error: This is R 2.11.1, package 'snow' needs >= 2.12.1
In addition: Warning message:
したがって、R は R 2.11 用にコンパイルされたパッケージ Snow バージョンをロードするようです。R 2.14 の Snow をホーム フォルダーにインストールし、コードに次の行を追加しました。
.libPaths("/soft/R/lib/R/library")
.libPaths("~/R/x86_64-pc-linux-gnu-library/2.11")
print(.libPaths())
print(sessionInfo())
print(version)
エラーが発生する前の出力では、実際に R 2.14.2 を実行していて、R パッケージ フォルダーが検索パスの最初にあることが確認されます。しかし、私はまだエラーが発生します。
私の質問は、どのバージョンのパッケージが R にロードされているかをどのように判断するのですか? installed.packages
インストールされているすべてのパッケージを見ることができる ので、ロードされたパッケージについて同様の情報を一覧表示する機能があるのではないでしょうか?