【问题标题】:Assigning Process to Cores using Perl使用 Perl 将进程分配给内核
【发布时间】:2010-08-03 08:12:16
【问题描述】:

如何将进程分配给特定的核心?我有一台 16 核机器,需要将进程分配给多个核心,而不是所有/少数几个在相同的核心上运行。

Parallel::ForkManager 可以这样做吗?或者你如何使用标准的 perl 发行版来做到这一点?

感谢任何指针。

谢谢

【问题讨论】:

  • 您的操作系统不会以最有效的方式自动在内核之间分配进程吗?您通常不必处理像这样低级别的问题。
  • 当您运行程序时,它是任意的,有时 2 个内核会占用所有 16 个进程的时间 1/3。这是系统具有最少的后台进程和计算的时候。重点是我要明确地将一个进程分配给一个核心任务。
  • 你可以查看Forks::Super提到here

标签: perl process multicore parallel-processing


【解决方案1】:

在Windows下,你可以使用Win32::Process,它有一个叫做SetProcessAffinityMask的子程序,它应该可以做你想做的事情。

Linux下,看看Sys::CpuAffinity

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-03
    • 2011-06-20
    • 2018-10-04
    • 1970-01-01
    • 1970-01-01
    • 2012-02-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多