根据 IBM 的说法,错误 134意味着
缓冲区已附加在字符串中,任务编号
并继续解释
已附加缓冲区时尝试附加缓冲区。
我觉得这很神秘。尝试用谷歌搜索错误消息没有产生任何结果。
为了隔离错误,我注释掉了除MPI_Init
和之外的所有 MPI 函数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 启动的进程数如何,都会发生错误。
编辑:快速搜索 terms 134
,在MPICH2 手册error code
上没有提供任何信息。的手册页也没有。error message
mpiexec
编辑 2:在我意识到我在initialize()
. 这个问题仍然存在,因为我希望看到关于这个错误的更好解释。