问题标签 [sbatch]

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 回答
160 浏览

sbatch - Dollar sign to get the value not working in my shell script?

Our school uses SLURM as the queueing system, where one has to specify some "preambles" before other commands. Hence, a shell script in this case usually starts with

Now, I wish to make my core number as a constant, which facilitates modifications. I did

It fails at #SBATCH -n $((NO_CORES)). As a complete newbie in shell script, I have no idea why $((NO_CORES)) here returns the value of NO_CORES.

0 投票
1 回答
2606 浏览

c++ - 如何将 sbatch 与 SLURM 和 makefile 一起使用?

我正在尝试向 SLURM 提交批处理作业,但我不断收到JobState=FAILED Reason=NonZeroExitCode. 我可以在常规 g++ 上编译和运行代码,但我必须使用 SLURM 来完成学校作业。我以为我正在正确运行它们,并且我从根目录中得到了一个讨厌的语法,告诉我退出在登录节点上运行的脚本。任何帮助,将不胜感激。这是我的批处理文件和我的 Makefile:

生成文件:

0 投票
3 回答
29180 浏览

cluster-computing - 如何从 SLURM 中的节点列表向任何 [子集] 节点提交作业?

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

目前我提交的每个工作如下:

但是,此参数使 slurm 等待提交的作业终止,因此使 3 个节点完全未使用,并且根据任务(多线程或单线程),当前活动节点也可能在 CPU 能力方面处于低负载状态.

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

0 投票
2 回答
196 浏览

parallel-processing - 如果我运行的子作业多于分配的核心数会怎样

所以我有一个 sbatch(slurm 作业调度程序)脚本,我在其中通过 3 个脚本处理大量数据:foo1.sh、foo2.sh 和 foo3.sh。

foo1.sh 和 foo2.sh 是独立的,我想同时运行它们。foo3.sh 需要 foo1.sh 和 foo2.sh 的输出,所以我正在构建一个依赖项。然后我必须重复 30 次。

让我们说:

这个想法是您启动 foo1_1 和 foo2_1 但由于 foo3_1 必须等待其他两个作业完成,我想进行下一次迭代。下一次迭代将启动 foo1_2 foo2_2 并且 foo3_2 将等待等等。

在某个时候,使用 srun 启动的子作业的数量将高于 --ntasks=30。会发生什么?它会等待之前的工作完成(我正在寻找的行为)吗?

谢谢

0 投票
1 回答
1476 浏览

parallel-processing - slurm 似乎启动了比请求更多的任务

我很难理解 SLURM 从sbatch脚本启动作业的方式。似乎 SLURM 忽略了--ntasks参数并srun立即启动了我的批处理文件中的所有任务。这是一个示例,对 StackOverflow 上此答案的代码稍作修改:

因此,在我的设置中,srun echo命令正在立即运行,而我希望它在srun sleep 10命令完成后运行。

我正在使用 SLURM 2.6.5 在我的 8 核个人工作站上安排和提交作业,并且我自己安装了它——因此完全有可能配置失败。以下是 slurm.conf 文件中的一些相关部分:

这是printenv | grep SLURM运行后的输出salloc --ntasks=1

我很感激任何意见或建议。如果需要更多信息,请告诉我。

谢谢阅读,

汤姆

玩了几遍后更新

我已经取得了一些进展,但我仍然没有完全得到我想要的行为。

如果我使用--exclusive我可以获得echo等待步骤的sleep步骤:

但是,如果我正在运行一个多步骤作业,其中每个步骤都需要多个处理器,我仍然不知道如何正确执行此操作,例如

会给我12个stress进程,也会

那么,如果我希望我的sbatch脚本占用 6 个处理器并一次启动三个步骤,每个步骤有 2 个处理器,我该怎么办?使用正确srun --exclusive -n 1 -c 2 stress -c 2吗?

0 投票
1 回答
4332 浏览

linux - 为什么我在使用 sbatch SLURM 时不断收到 NonZeroExitCode?

我有一个简单的 test.ksh,我正在使用以下命令运行:

批量测试.ksh

我不断收到“JobState=FAILED Reason=NonZeroExitCode”(使用“scontrol show job”)

我已经确定了以下几点:

  1. slurmd 和 slurmctld 已启动并正常运行
  2. “test.ksh”的用户权限是 777。
  3. 命令“srun test.ksh”(本身,不使用 sbatch)成功没有问题
  4. 我尝试在“test.ksh”的最后一行输入“return 0”,但没有成功
  5. 我尝试在“test.ksh”的最后一行输入“exit 0”,但没有成功
  6. 我尝试在“test.ksh”的最后一行输入“主机名”,但没有成功
  7. 我尝试在“test.ksh”的最后一行输入“srun hostname”,但没有成功
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 投票
3 回答
6661 浏览

slurm - 是否有向 SLURM(类似于 LSF)提交许多工作的“单线”?

我可以向 SLURM 提交“单行”吗?

使用bsubLSF 和标准 Linux 实用程序xargs,我可以轻松地提交一个单独的作业来解压缩目录中的所有文件:


使用 SLURM,我认为srun或者sbatch会起作用,但无济于事:

bsub从 LSF中看到与SLURM 中的列表等效sbatch,但到目前为止,它们似乎仅等效于提交脚本文件:

有没有其他方法可以使用 SLURM 提交“单线”作业?

0 投票
0 回答
58 浏览

parallel-processing - 程序在 1 个节点上进行强扩展,使用 2 个节点大幅增加运行时间

结果表明,当我将处理器数量从 2 个增加到 4 个再到 10 个时,运行时间每次都会减少,但是当我达到 20 个处理器时,运行时间会大大增加。每个节点都有两个 8 核处理器,所以我想将每个节点限制为 16 个 mpi 进程。我这样做正确吗?我认为问题可能与我的 sbatch 文件有关。尤其是当我从使用一个节点到两个节点时,运行时间会大幅增加。这是我的批处理文件:

0 投票
1 回答
3507 浏览

slurm - SLURM 批量输出缓冲

我创建了一些 slurm 脚本,然后尝试使用 sbatch 执行它们。但是输出文件更新不频繁(可能每分钟一次)。

有没有办法改变 sbatch 中的输出缓冲延迟?我知道在这种情况下会使用 stdbuf,但我无法使其与 sbatch 一起使用。