问题标签 [slurm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
268 浏览

hpc - 使用指定数量的节点启动 slurm 数组作业

我正在尝试使用 slurm 版本 14.03.0 在我们的 HPC 上对齐 168 个序列文件。我一次最多只能使用 9 个计算节点,以保持某些节点对其他人开放。

我更改了文件名,以便可以在 sbatch 中使用数组函数。序列文件如下所示:Sequence1.fastq.gz、Sequence2.fastq.gz、... Sequence168.fastq.gz

我似乎不知道如何告诉它运行所有 168 个文件,一次 9 个。我可以让它运行所有 168 个文件,但它使用了所有可用的节点,这会给我带来麻烦,因为这将运行几天。

我发现我应该能够在哪里使用“--array=1-168%9”来指定一次运行多少个,但这是在比我们集群上的更新版本的 slurm 中实现的。是否有替代方法来获得此功能?几个星期以来,我一直在尝试一些事情并将头发拉出来。

我试图运行它的方式是:

谢谢!马特

0 投票
2 回答
1585 浏览

slurm - 在贫民窟中使用 --array 参数运行并行作业

我正在尝试学习 slurm 系统,但我在理解上有些困难。我正在尝试使用 sbatch 中的 --array 参数并行运行一堆作业。我希望作业分布在多个节点上,但考虑到时间戳,它们似乎都在同一个节点上运行。

我正在使用的 sbatch 命令:

正在运行的 test.sh 文件:

输出文件:

0 投票
1 回答
970 浏览

slurm - 是否可以向 slurm 提交一系列不同的工作?

例如,我有一个名为myScript处理一个输入文件的脚本,并且我有一个文件名列表。也就是说,我需要运行

用于存储在filenames.txt.

分配我在 Slurm 中找到的作业的唯一方法是指定-n参数,该参数复制您的命令或批处理脚本。但请注意,我需要在每次运行中传入一个可变参数。在 Slurm 中可以这样做吗?

我目前的解决方案是触发很多sbatch脚本,每个脚本都有一个指定的<filename>. 但是,这种方式squeue会显示我的很多工作,我担心这会被其他用户皱眉。

0 投票
2 回答
1017 浏览

bash - 如何将用于提交 SLURM 作业的脚本从 Bash 转换为 Perl?

我有以下 Bash 脚本用于在集群上向SLURM提交作业:

这些#SBATCH行是 SLURM 命令:

  • #SBATCH -A 1234是项目编号 (1234)
  • #SBATCH -t 2-00:00是工作时间
  • #SBATCH -n 24是核心数

module add xxx加载环境模块 xxx(在这种情况下,我实际使用module add gaussiangaussian是计算量子化学程序)。

srun是启动作业的 SLURM 命令。resp.com包括高斯和原子坐标的命令。

我尝试将 Bash 脚本转换为以下 Perl 脚本,但没有成功。我怎样才能在 Perl 中做到这一点?

0 投票
1 回答
318 浏览

linux - 使用 SLURM 运行多阶段作业

我是 SLURM 的新手。我的问题是我有一个多阶段作业,需要在集群上运行,其作业由 SLURM 管理。具体来说,我想安排一个工作:

  1. 抓取 N 个节点,
  2. 在所有人上安装软件
  3. (一旦所有节点成功完成安装)它会在节点上创建一个数据库实例
  4. 加载数据库
  5. (一旦加载成功)运行一组查询,用于基准测试
  6. 删除数据库并返回节点

每个步骤都可以使用单独的 bash 脚本运行;而脚本的执行和阶段之间的转换由主节点协调。

我的问题是我知道如何使用 SLURM 分配节点并在每个节点上调用单个命令或脚本(在每个节点上作为独立作业运行)。但是,一旦每个节点上的命令完成(或调用的脚本完成),节点就会返回到空闲资源池,让分配的节点排队等待我的工作。但上述用例涉及几个阶段/脚本;并且需要他们之间的协调。

我想知道使用 SLURM 为这样的用例设计/运行一组脚本的正确方法是什么。任何建议或示例都将非常有帮助,并受到高度赞赏。

0 投票
1 回答
128 浏览

amazon-web-services - let slurmctld "think" that nodes are idle~ like after "SuspendProgram", but in fact they are down when it starts

Is there a way to start slurmctld daemon with the execution nodes off, but making it to belive that he has requested the suspend for these nodes (e.g. like if it had called the SuspendProgram)?

I am setting up a virtual cluster, so the SuspendProgram and ResumeProgram do terminate and instanciate virtual machines. In this way I could power on only the master node, and he would fire up nodes only when requested.

The problem is that for the moment, when I start slurmctld I need the nodes to get up, tell him that they exits, and wait that he shut them down. This adds unwanted costs, because I need to poweron all the "supposed" instances.

I would like to instanciate the master, the one running slurmctld, and let him think that the nodes are idle~ like after SuspendProgram.

Cheers

0 投票
2 回答
6932 浏览

cluster-computing - slurm 中的作业数组规范无效

我正在 slurm 中提交一个玩具阵列作业。我的命令行是

其中 j1 是脚本:

当我提交这个时,我收到一个错误:

没有数组规范,同样的工作也能正常工作:

0 投票
1 回答
433 浏览

mpi - Torque/OpenMPI 根据处理器数量动态分配节点

我想知道 Torque 是否足够聪明,可以根据您请求的 mpi 核心分配正确数量的节点。对于我们的集群,我们有异构节点,仅放置您想要的节点数量和每个节点的处理器可能会非常浪费。所以我想知道你是否可以做这样的事情

但是,扭矩仅使用此命令分配一个节点(因为我没有指定节点数)。有没有一种方法可以根据我的 procs 数量来确定正确数量的节点,以便最大限度地提高效率?

侧边栏 - 我们可能很快就会切换到 SLURM,这在能力范围内吗?

0 投票
2 回答
701 浏览

bash - 如何使用 slurm 上的 if 语句取消作业?

我的 bash 脚本将比较并从不同的两个文件中读取两个值。如果它们不相等,则脚本应取消 slurm 上的作业。我想我应该得到工作ID。但我不知道如何获取作业 ID 并在 bash 脚本中取消它。我怎样才能做到这一点?

0 投票
2 回答
3101 浏览

scala - 在 Slurm 上运行 Spark

如何在 Slurm 集群上运行 Spark?我很感兴趣在我的程序中定义 SparkContext 并设置我想使用多少个节点,但是如果我必须为它编写一些 bash 脚本,那也可以。