【问题标题】:Can slurm run 3 seperate computers as one "node"?slurm 可以将 3 台单独的计算机作为一个“节点”运行吗?
【发布时间】:2020-06-13 07:01:51
【问题描述】:

我是一名实习生,负责在三个运行 ubuntu 的计算单元上安装 slurm。现在的工作方式是人们通过 ssh 进入其中一个计算单元并在那里运行作业,因为所有三个单元都通过 nfs 挂载共享内存。否则它们是独立的机器。

我的问题是,从我在文档中阅读的内容来看,似乎在安装 slurm 时我会将这些计算单元中的每一个指定为一个完全独立的节点,并且我想运行的任何作业都使用多个内核仍然会受到单个节点上可用内核数量的限制。然而,我的主管告诉我,这三个单元应该作为单个节点安装,当一个工作需要比单个计算单元上可用的更多内核时,slurm 应该只使用所有内核。目的是我们不会改变我们执行作业的方式(如并行化的 R 脚本),只是在将它们发送到 slurm 进行调度和执行之前将它们“包装”在一个 sbatch 脚本中。

那么我的主管是否正确,因为 slurm 可用于运行我们的并行脚本,但内核数量比单台机器上可用的内核数量多?

【问题讨论】:

    标签: slurm


    【解决方案1】:

    在比可用内核更多的内核上运行脚本是无稽之谈。它没有提供任何性能提升,而是相反,因为需要管理更多线程但计算能力是相同的。

    但他是对的,因为您可以包装当前脚本并将其发送到 SLURM 以使用整个节点执行。但是三台机器将是三个节点。它们不能作为单个节点工作,因为它们不是单个节点/机器。它们既不共享内存,也不共享总线,也不共享外围设备……它们只是通过网络共享一些磁盘。

    你这么说

    我想运行的任何使用多核的作业仍然会受到单个节点上可用核数的限制

    但这就是 SSH 目前的情况。使用 SLURM 管理资源不会丢失任何内容。事实上,SLURM 将负责为每个作业提供适当的资源并避免其他用户干扰您的计算。

    最好的选择:像往常一样创建一个由三个节点组成的集群,让人们在不超过可用资源的情况下发送他们的作业,请求他们需要的尽可能多的资源。

    【讨论】:

      猜你喜欢
      • 2011-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-20
      • 2017-03-17
      • 1970-01-01
      • 2020-04-09
      相关资源
      最近更新 更多