IBM によると、エラー 134は次のことを意味します。
バッファはすでに文字列、タスク番号にアタッチされています
そしてそれを説明し続けます
バッファーが既にアタッチされているときに、バッファーをアタッチしようとしました。
私はかなり不可解だと思います。エラーメッセージをグーグルで検索しようとしても、結果は得られませんでした。
エラーを特定するために、すべての MPI 関数をコメントアウトして、 forMPI_Init
および を保存しましMPI_Finalize
た。具体的には、
int main(...){
MPI_Init(...);
initialize();
MPI_Barrier(MPI_COMM_WORLD);
//do stuff, no synchronization at all
MPI_Finalize();
return 0;
}
initialize()
いくつかのファイルを読み取り、メモリを割り当てます。また、呼び出しMPI_Comm_rank
てMPI_Comm_size
、後で使用できるように保存します。
MPICH2 バージョン 1.4.1 ( 1.4.1-1ubuntu1
dpkg による) を使用し、gcc 4.6.3 でコンパイルしています。mpiexec によって開始されたプロセスの数に関係なく、エラーが発生します。
編集:用語のクイック検索134
、error code
およびMPICH2マニュアルerror message
では情報が提供されませんでした。のマンページもそうではありません。mpiexec
編集 2: でバッファ オーバーフローが発生していることに気付いた後、プログラムのエラーは解決されましたinitialize()
。このエラーに関するより良い説明が欲しいので、質問はまだ残っています。