超线程环境中rank进程未绑定至逻辑核上
现象描述
超线程环境中rank进程未绑定至逻辑核上。
可能原因
- 若不指定“--bind-to”的值,由于Hyper MPI默认“--bind-to”的值为“core”,即将rank进程绑定在物理核上,而不是逻辑核上。
“--bind-to”的取值中“core”和“hwthread”的含义如下所示:
- core:将rank进程绑定至物理核。
- hwthread:将rank进程绑定至逻辑核。
- 将“--bind-to”的值指定为“core”,导致rank进程绑定在物理核上,而不是逻辑核上。
恢复步骤
将rank进程绑定至逻辑核上,需要将“--bind-to”的值指定为“hwthread”,示例如下:
mpirun -np 4 --bind-to hwthread osu_bcast

若需要将rank进程按照逻辑核进行分布,则需要将“--bind-to”和“--map-by”的值均指定为“hwthread”,示例如下:
mpirun -np 4 --map-by hwthread --bind-to hwthread osu_bcast
父主题: FAQ