6

我知道一个进程(父进程)可以使用固定到一个核心sched_setaffinity然后分叉的进程继承亲和性,并且也将固定在同一个核心上。但是,我不想让它们永远固定在同一个核心上。理想情况下,我希望他们一起留在同一个CPU上,即如果父级由操作系统调度程序迁移,则子级应该跟随父级并迁移到与父级相同的 CPU。

一种可能的方法是让shared variablewhere 父级定期更新其当前 CPU。然后子进程可以定期查找此变量并sched_setaffinity迁移到与父进程相同的 CPU。但是,这看起来有点 hacky,并且可能涉及它们在不同 CPU 上运行的时间段。有没有更好的方法来实现这一目标?

4

2 回答 2

1

是否可以在线程中而不是在其自己的进程中运行子进程?

于 2013-08-02T01:10:31.687 回答
0

帮派调度有帮助吗?然后,父母和孩子将被共同安排。

于 2013-04-03T21:43:56.957 回答