【问题标题】:Is it reasonable to use all the cores on the compute nodes?使用计算节点上的所有内核是否合理?
【发布时间】:2017-08-26 00:28:24
【问题描述】:

我有一个小问题。

计算节点有 2 个插槽,每个插槽有 12 个内核。所以它有 24 个内核(在我的例子中是 24 个 CPU)。

当我运行并行计算时,我可以使用所有 cpu 吗?换句话说,我们需要为后台程序腾出几个cpu吗?

顺便说一句,我认为在同一芯片(相同的插槽)上使用 cpu 可以避免插槽之间的通信,从而可以加快运行速度。那么如何确定应该使用多少cpu来生成最快的运行呢?

对于这个问题的任何一般性建议将不胜感激。

最好的,

【问题讨论】:

  • 您好,欢迎来到 Stack Overflow。根据网站规则:“有关通用计算硬件和软件的问题不在 Stack Overflow 的主题范围内,除非它们直接涉及主要用于编程的工具。您可以通过 Super User 获得帮助。”
  • @DavyM 我很确定超级用户也会放弃这个特殊问题。
  • 操作系统在所有节点上实现分时。它会让后台程序在必要时运行。

标签: linux cluster-computing nodes cpu-speed


【解决方案1】:

回答您的问题:是的,您可以将所有内核用于并行作业或程序。根据您要在后台运行的程序,您可能会在执行作业/程序期间看到一些性能下降。确定要使用的最佳内核数量的真正方法是使用不同数量的内核执行各种运行,并分析您的程序和后台程序的性能。如果您想充分利用所有内核,我建议您只运行所有内核的程序,而几乎没有运行后台程序。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-26
    • 2022-08-17
    • 2013-03-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多