1

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_rankMPI_Comm_size、後で使用できるように保存します。

MPICH2 バージョン 1.4.1 ( 1.4.1-1ubuntu1dpkg による) を使用し、gcc 4.6.3 でコンパイルしています。mpiexec によって開始されたプロセスの数に関係なく、エラーが発生します。


編集:用語のクイック検索134error codeおよびMPICH2マニュアルerror messageでは情報が提供されませんでした。のマンページもそうではありません。mpiexec


編集 2: でバッファ オーバーフローが発生していることに気付いた後、プログラムのエラーは解決されましたinitialize()。このエラーに関するより良い説明が欲しいので、質問はまだ残っています。

4

0 に答える 0