为每个MPI列组分配N个核

为每个MPI列组分配N个核,mpi,openmpi,Mpi,Openmpi,我试图为每个MPI等级分配N个内核。我正在运行一个具有256个MPI列组的应用程序,我希望为每个MPI列组分配16个内核 我的解决方案很有用,但希望我使用rankfile,在经历了一定数量的等级-核心关系之后,这会变得单调乏味 有更好的方法吗?使用OpenMPI,您可以 mpirun --map-by node:PE=16 ... 一个问题:当这样做时,如何访问每个级别的单个处理器?你是什么意思?MPI任务绑定在16个内核上。由应用程序创建线程并将其绑定到其他15个内核。如果您使用混合MPI+

我试图为每个MPI等级分配N个内核。我正在运行一个具有256个MPI列组的应用程序,我希望为每个MPI列组分配16个内核

我的解决方案很有用,但希望我使用rankfile,在经历了一定数量的等级-核心关系之后,这会变得单调乏味

有更好的方法吗?

使用OpenMPI,您可以

mpirun --map-by node:PE=16 ...

一个问题:当这样做时,如何访问每个级别的单个处理器?你是什么意思?MPI任务绑定在16个内核上。由应用程序创建线程并将其绑定到其他15个内核。如果您使用混合MPI+OpenMPY,OpenMP运行时可以做到这一点,这正是我所缺少的。。。混合并行程序。只有当程序是混合并行时,这才特别有用,对吗?如果我错了,请纠正我。