0
私はAndroid用にクロスコンパイルされたMPICHを設定しました。mpiexecが "mkstemp failed"というエラーをスローするこのファイルまたはディレクトリはありません
$./mpiexec -n 2 -launcher=fork ./mpi_hello_world
Fatal error in MPI_Init: Other MPI error, error stack:
MPIR_Init_thread(474).................:
MPID_Init(190)........................: channel initialization failed
MPIDI_CH3_Init(89)....................:
MPID_nem_init(272)....................:
MPIDI_CH3I_Seg_commit(327)............:
MPIU_SHMW_Seg_create_and_attach(897)..:
MPIU_SHMW_Seg_create_attach_templ(610): mkstemp failed No such file or directory
それは何かかもしれ:Androidのシステムは、以下のようにパラメータが「n」は1よりも大きい場合は、エラーを次のように応答が
$./mpiexec -n 1 -launcher=fork ./mpi_hello_world
Hello world from processor zero, rank 0 out of 1 processors
を次のように私は、単一のプロセスを生成するとき それが正常に動作しますアンドロイドに作成されている一時ファイルの名前に関連していますか?助けてください。
ここで問題点や解決策がわかりませんが、現時点ではMPI開発者とAndroid開発者の共通点はおそらくあなただけなので、十分に掘り下げなければならないと言います。 MPICHがやろうとしていることについて、Androidの人々があなたを助けることができるように、より多くの情報を入手してください。しかし、最初のスタブは、あなたが使っているAndroidのインストールにmkstempという名前のプログラムがないことです。パスを追加するか、代替案を見つけ出す必要があるかもしれません。 –
共有メモリをサポートしないMPICHを構築する場合、 'mkstemp'機能は必要ありません。 '--with-device = ch3:sock'を設定行に追加してみてください。ただし、このビルドではノード内転送のパフォーマンスが低下します。 – kraffenetti
@kraffenetti、コメントありがとう、私はすでに--with-device = ch3:sockオプションを使用しています。 –