首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >是否将所有线程默认到一个核心?

是否将所有线程默认到一个核心?
EN

Stack Overflow用户
提问于 2014-01-28 17:01:53
回答 1查看 299关注 0票数 2

我指定了一个核心为2-11的cpuset X和taskset --cpu-list 2。

似乎如果我运行一个任务集嵌套在cpuset X中的进程,那么sched_getaffinity()只看到核心#2可用。

我的问题是,有没有办法实现以下几点:

  • 将一个进程中的所有线程默认设置为1个核心,
  • 该进程受到cpuset的“保护”(这样其他进程就不会使用指定的一组核心),并且
  • i仍然可以通过编程方式设置某些线程的cpu亲和性(我知道如何使用cpuset来实现这一点)。

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2014-11-17 00:10:33

让我这样问您的问题:您希望您的进程在其中一个核心上运行,并阻止任何其他进程在其上运行吗?在这种情况下,您应该使用命令isolcpus

通过在引导时使用参数isolcpus,您可以将一个或多个CPU与内核调度程序隔离开来,除非某个进程/线程使用CPU亲和性请求使用隔离的CPU。(请参阅- http://www.linuxtopia.org/online_books/linux_kernel/kernel_configuration/re46.html和- whole one core dedicated to single process)

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

https://stackoverflow.com/questions/21401052

复制
相关文章

相似问题

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