如何在 linux 的 openmpi 中启用多线程标志



我尝试在openmpi中使用MPI_THREAD_MULTIPLE选项。为此,我发现我需要在 openmpi 配置中启用多线程选项。我不知道该怎么做?有人可以帮我吗?提前谢谢你。我检查了系统中的 openmpi 设置。线程的设置如下:

Thread support: posix (MPI_THREAD_MULTIPLE: no, OPAL support: yes, OMPI progress: no, ORTE progress: yes, Event lib: yes) FT Checkpoint support: no (checkpoint thread: no)

如何启用MPI_THREAD_MULTIPLE标志?

在 openMPI 2.0.1 中,它是./configure --enable-mpi-thread-multiple 。使用它来重新编译 openmpi,并使用 int ret = MPI_Init_thread(&argc, &argv, MPI_THREAD_MULTIPLE, &prov); assert(ret == 0 && prov == MPI_THREAD_MULTIPLE); 来初始化 MPI。

默认情况下,Open MPI 主分支处于MPI_THREAD_MULTIPLE状态,因此您不会在 ./configure --help 中看到该选项

如果您想使用它进行配置,请尝试签出到 v2.x 或类似版本,然后使用该选项 重新编译

  • ./配置 --help | grep 线程 -> --启用 MPI-线程多个

最新更新