是否有任何方法通过触发从另一个进程的迁移将当前正在运行的进程迁移到不同的cpu核心。
下面是我想要做的更详细的事情。我正在研究一个异构的处理器系统。我有一个在系统上运行的多线程应用程序。每当我的经理进程决定时,我想将其中一个线程迁移到不同的内核(具有不同的功能)。
我的管理器进程可以触发目标应用程序pid的特定tid的线程迁移吗?如果是的话,是否可以立即执行,即在我的经理进程触发时,立即将正在运行的线程迁移到另一个核心(例如从核心0迁移到核心1)?
发布于 2016-02-23 17:57:04
我想这应该是可能的(如果您正在使用POSIX线程API)使用np(3)。
pthread_setaffinity_np()函数将线程线程的CPU关联掩码设置为cpuset所指向的CPU集。如果调用成功,并且线程当前不在cpuset中的一个CPU上运行,那么它将被迁移到其中一个CPU上。
https://stackoverflow.com/questions/35584582
复制相似问题