我尝试将4个任务分配给4个处理器。 hwloc-ls --of console
的输出为:
L2 L#0 (256KB) + L1d L#0 (32KB) + L1i L#0 (32KB) + Core L#0
PU L#0 (P#0)
PU L#1 (P#2)
L2 L#1 (256KB) + L1d L#1 (32KB) + L1i L#1 (32KB) + Core L#1
PU L#2 (P#1)
PU L#3 (P#3)
我从中推断出有2个内核和4个处理器。图形,
我根据Hristo制作了一个等级文件:
Rankfile:
rank 0=localhost slot=p0
rank 1=localhost slot=p2
rank 2=localhost slot=p1
rank 3=localhost slot=p3
并根据Gilles添加了-use-hwthread-cpus
选项,从而产生以下命令:
mpirun -use-hwthread-cpus -n 4 -H localhost -rf rankfile ./a.out
但是,我收到了错误消息:
系统中没有足够的插槽可满足2 应用程序请求的插槽。
我一直在尝试使用不同的等级文件Hamy,希望问题与引用处理器的方式有关,但我仍然得到每个组合的错误消息。我的OpenMPI版本是3.0.1。