首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >numactl -physcpubind处理器迁移

numactl -physcpubind处理器迁移
EN

Stack Overflow用户
提问于 2013-06-05 21:57:30
回答 1查看 1.3K关注 0票数 3

我正在尝试用numactl启动我的MPI应用程序(OpenMPI1.4.5)。由于使用--cpu-nodebind的负载平衡显然不是以循环的方式在可用的节点之间分发我的进程,所以我特别希望将我的进程限制在一组封闭的cpus上。通过这种方式,我计划根据每个节点上运行的线程数来确保节点之间的均衡负载。--根据numactl手册,似乎在做这项工作。

问题是--根据我从this后提取的内容--使用--phycpubind,进程可以在这个cpu集中迁移。另一个问题是,该集合中的一些CPU仍未使用,而其他CPU则被分配给两个或多个进程,因此只运行50%或更少的CPU使用率。为什么会发生这种情况,对这种现象有什么解决办法吗?

亲切的问候

EN

回答 1

Stack Overflow用户

发布于 2020-08-03 19:44:32

我想你可以试试这个(它对我有用):

代码语言:javascript
复制
numactl --cpunodebind={cpu-core}  chrt -r 98 {your-app}

chrt命令允许您建立调度策略,您可以选择以下内容:

代码语言:javascript
复制
Policy options:
 -b, --batch          set policy to SCHED_BATCH
 -d, --deadline       set policy to SCHED_DEADLINE
 -f, --fifo           set policy to SCHED_FIFO
 -i, --idle           set policy to SCHED_IDLE
 -o, --other          set policy to SCHED_OTHER
 -r, --rr             set policy to SCHED_RR (default)

编辑:数字98是优先,在我的情况下,我正在运行一个时间关键的进程。此外,您可能需要隔离您正在使用的cpus,以防止调度程序将进程分配/移动到它们/从它们移动。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16950606

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档