计算化学公社

标题: 对于双路CPU服务器,如何将一个并行任务指定在特定CPU上运行 [打印本页]

作者
Author:
questionx    时间: 2020-7-17 13:41
标题: 对于双路CPU服务器,如何将一个并行任务指定在特定CPU上运行
本帖最后由 questionx 于 2020-7-17 13:51 编辑

大家好,小弟做理论计算工作也有一阵子了,最近使用双路CPU服务器时,产生了一个疑问。如双路8173M机器,有56物理核,如果我在上面进行一个28核的并行计算任务。如何限定这28核的任务只在某一指定CPU上运行呢,如CPU0?

目前多次提交计算任务发现,CPU核心的分配好像是没有规律的,各进程随机分布在CPU0和CPU1上面,如下图所示。

如果一个计算任务的进程在两颗CPU上同时进行或来回切换,会不会因为CPU间的通信,对计算速度造成影响?

(, 下载次数 Times of downloads: 47)


作者
Author:
rabbitkiller    时间: 2020-7-17 15:45
可以参看社长的文章

http://bbs.keinsci.com/thread-17751-1-1.html
作者
Author:
beowulf    时间: 2020-7-17 16:37
很多的mpi实现都可以绑定。

对于openmp任务,可以装一个小软件叫做
likwid,非常好用。likwid = likely I know what I am doing

作者
Author:
bobosiji    时间: 2020-7-17 20:35
mdrun -pin on -pinoffset xx 行不?
作者
Author:
sobereva    时间: 2020-7-18 10:20
bobosiji 发表于 2020-7-17 20:35
mdrun -pin on -pinoffset xx 行不?

这是gmx特有的做法
作者
Author:
abin    时间: 2020-7-18 12:04
mpi cpu bind 搜一下就有。

或者结果slurm openpbs都可以实现。




欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3