6

2 台のマシンのクラスターで MPICH を使用して単純な MPI プログラムを実行しようとしています。ただし、1 つは Fedora 17 を実行しており、もう 1 つは Debian Squeeze を実行しています - 必ずしも問題ではありませんが、問題は 2 つのディストリビューションが mpi exec を異なるディレクトリに配置していることです。

host1 から次を実行すると:

mpiexec -hosts host2 -np 1 -wdir /home/chris/src/mpi/ ./mpitest

次のエラーで失敗します

bash: /usr/lib/mpich2/bin/hydra_pmi_proxy: No such file or directory

これは、Fedora マシンにhydra_pmi_proxyはインストールされているが、Debian マシンにはインストールされているためと思われます。ssh 経由で host1 からプロセスを生成すると、host2 の同じ場所で hydra_pmi_proxy が見つかると想定されます。/usr/lib/mpich2/bin/usr/bin

そのノードでローカルに実行するだけで、プログラムは両方のマシンで正常に実行されます-両方で実行しようとすると問題が発生します。

へのリモート パスをオーバーライドする方法について MPICH ドキュメントを検索しましたが、役に立ちhydra_pmi_proxyませんでした。

どうにかしてこれを行うことはできますか?MPICH の利点の 1 つは、異種ホストを簡単に処理できることだと思いました....

どんな洞察も大歓迎です!

4

3 に答える 3

2

mpich hydra と端末をインストールせずにこの問題を解決することができました (例: apt-get install MPICH2 または hydra)。しかし、代わりにソース コードをダウンロードしました: http://www.mpich.org/downloads/ (安定版)。次に、マシンのマスターとスレーブで次のコマンドを実行しました: export PATH = / home / you / mpich: $ PATH (私のコンピューターでは、mpich ディレクトリにインストールしました)

この問題を解決しました!

ありがとう!

于 2013-10-27T13:45:01.573 に答える
0

exportfs -varこの問題は、(マスター マシンで) NFS 構成で解決できます。

ディレクトリはありますが/mirror、ディレクトリ/usr/etc/exports次の場所に追加する必要があります。

/usr *(rw,sync,no_subtree_check)

クライアント マシンで、以下を編集/etc/fstabして追加します。

master-ip/usr   /usr nfs defaults 0 0

コマンドを保存して実行しますmount -a

実行後df -h、スレーブ/クライアントのマスターからマウントされたディレクトリを確認します。

于 2016-08-25T21:47:04.100 に答える