当前位置: 首页 > 知识库问答 >
问题:

如何在Slurm中从nodelist向任何节点[子集]提交作业?

公子昂
2023-03-14

我有几千个作业要在一个有16个节点的SLURM集群上运行。这些作业应该只在大小为7的可用节点的子集上运行。一些任务是并行化的,因此使用单个节点的所有CPU能力,而其他任务是单线程的。因此,多个作业应该在单个节点上同时运行。任何任务都不应该在多个节点上产生。

sbatch --nodelist=myCluster[10-16] myScript.sh

强制slurm在指定节点上同时运行多个作业的sbatch的最佳参数是什么?

共有1个答案

武卓
2023-03-14

你可以反过来工作;与其指定使用哪些节点,不如指定不使用哪些节点,因为每个作业都被分配了所有7个节点:

sbatch --exclude=myCluster[01-09] myScript.sh

而且Slurm永远不会为您的作业分配超过7个节点。但是,请确保集群配置允许节点共享,并且myscript.sh包含#sbatch--ntasks=1-cpu-per-task=nn每个作业的线程数。

 类似资料:
  • 但是如果我想强迫condor使用所有的节点呢?只是为了评估在多个节点上运行时与在单个节点上运行时的进程时间? 我尝试在提交文件中添加requirements=Machine==“hostname1”&&Machine==“hostname2”,但不起作用。

  • 在ResourceManager节点上启动flink作业(查找配置文件) 从ResourceManager下载配置文件到本地。 我想,这两种方式都不太好。如何将作业提交到远程纱线集群。有没有合适的办法?

  • 我遇到了一个问题,我知道如何计算树中的所有节点,像这样

  • 我正在尝试将以下结构从实时数据库迁移到Firestore: 因此,在根节点“资源”下,我有一些包含资源项列表的子节点(SENT、ACCEPT、REFUSED、...)。 使用Firestore,我似乎无法将subCollection直接置于collection之下(当我试图在管理控制台中使用Firestore复制此结构时,我需要创建一个中间文档,如: 女巫通向那个结构: 因此子节点“SENT”被复

  • 我正在做一个项目,以创建一个超过2个子节点的树。我明白在创建二叉树时,我们可以只创建一个左节点和一个右节点来充当子节点,但当我在网上寻找创建树的帮助时,我找到的每一个解决方案都谈到了创建二叉树。我明白创建树的部分意味着您需要创建子节点数组或arraylist,但我不明白如何将数据放入数组,或者如何将子节点数组“连接”到父节点? 这是我目前掌握的代码。我知道这不是很多,但我正在努力刚刚开始这个项目。

  • 我一直在寻找这样一种情况的解决方案:我有一个调用项的哈希集,并且我要将这个集提交给执行器进行并行执行。现在我想只要任何提交的任务完成,我应该能够分配一个新的Callable到Executor。 我尝试了这段代码,但是如果我使用Executor.Invoke,那么Executor将等待直到所有任务完成,如果我使用Executor.Submit,那么任务将按顺序完成。如有任何帮助,我们将不胜感激。