为MPI添加PThread多线程支持

来源:互联网 发布:前端常见js兼容性问题 编辑:程序博客网 时间:2024/05/28 16:01
如果要在PThread中调用MPI,就要为MPI添加PThread支持。如果当前编译的MPI不支持PThread,那么在调用
MPI_Init_thread(&argc,&argv,MPI_THREAD_MULTIPLE, &provided);  if(provided != MPI_THREAD_MULTIPLE)  {      printf("MPI do not Support Multiple thread\n");      exit(0);  }  

时会打印出MPI do not Support Multiple thread,这说明Open MPI在编译的时候没有添加多线程的支持,需要重新编译Open MPI,而且在配置的时候需要打开“允许多线程”的开关,如果Open MPI选用的是1.6版本,那么配置命令应该如下:

./configure --prefix=/opt/openmpi1.6 --enable-mpi-thread-multiple

不同的版本配置命令不同,可以通过./configure --help 查看。

经过重新编译之后就为MPI添加了PThread的支持,再调用上面的代码时便不会输出MPI do not Support Multiple thread了。

原创粉丝点击