Slurm:为什么在 sbatch 中使用 srun?

2023-12-23

在 sbatch 脚本中,您可以直接启动程序或脚本(例如可执行文件myapp)但在许多教程中人们使用srun myapp反而。

尽管阅读了有关该主题的一些文档,我不明白其中的区别以及何时使用这些语法.

我希望这个问题足够精确(SO的第一个问题),提前感谢您的回答。


The srun命令用于创建作业“步骤”。

首先,它将带来更好的报告资源使用情况;这sstat https://slurm.schedmd.com/sstat.html命令将为启动的进程提供实时资源使用情况srun,并且每个步骤(每次调用 srun)都将在记帐中单独报告。

其次,它可以用来设置串行程序的多个实例(仅使用一个 CPU 的程序)到单个作业中,并在作业分配内对这些程序进行微调度。

最后,对于并行作业,srun也将扮演重要角色启动并行程序并设置并行环境。它将根据请求启动尽可能多的程序实例--ntasks为作业分配的 CPU 上的选项。如果是MPI https://en.wikipedia.org/wiki/Message_Passing_Interface程序中,它还将处理 MPI 库和 Slurm 之间的通信。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Slurm:为什么在 sbatch 中使用 srun? 的相关文章

  • C++性能优化系列——矩阵转置(八)IPP转置API性能测试

    本篇记录Intel 高性能计算函数库IPP中的转置函数ippiTranspose 8u C1R的执行情况 方便性能优化系列篇中转置实现做性能对比 函数说明 解释来自IPP2018发布文档 Intel Integrated Performan
  • 高性能计算(HPC)和智能计算理解

    1 现代终端设备一般都跟云端服务器相连 但只要可能 我们都希望计算可以在本地终端解决 这样做的好处是多方面的 既可以减小网络带宽的压力 又可以避免网络传输产生的时延 还可以让用户的数据更安全 现代终端设备一般用一个片上系统 SoC 做计算
  • 如何让SBATCH通过电子邮件发送标准输出?

    我想让slurm系统发送myprogram计算完成后通过电子邮件输出 所以我写了SBATCH如下 bin bash l SBATCH J MyModel SBATCH n 1 Number of cores SBATCH t 1 00 00
  • slurm 集群的最少计算机数量是多少

    我想设置一个SLURM集群 我至少需要多少台机器 我可以从两台机器开始 一台仅是客户端 一台既是客户端又是服务器 吗 正如 Carles 所写 如果您愿意 您可以只使用一台计算机 同时运行控制器 slurmctld 和工人 slurmd 守
  • 多分区作业的批处理脚本?

    我正在开发一个项目 该项目在大型计算集群的两个不同分区上运行程序 我想使用批处理脚本来运行它 但搜索后 仍然不清楚是否 如何从单个批处理脚本中在两个不同的分区上分配和运行程序 这就是我想做的事情 bin bash SBATCH partit
  • Slurm:为什么在 sbatch 中使用 srun?

    在 sbatch 脚本中 您可以直接启动程序或脚本 例如可执行文件myapp 但在许多教程中人们使用srun myapp反而 尽管阅读了有关该主题的一些文档 我不明白其中的区别以及何时使用这些语法 我希望这个问题足够精确 SO的第一个问题
  • 如何在 slurm 作业期间监控资源?

    我正在我们的大学集群 普通用户 无管理员权限 上运行作业 该集群使用 SLURM 调度系统 我有兴趣绘制随时间推移 即作业运行时 的 CPU 和内存使用情况 我知道关于sacct and sstat我正在考虑将这些命令包含在我的提交脚本中
  • SLURM 集群中出现错误 - 检测到 1 个 oom-kill 事件:如何改进正在运行的作业

    我在 SLURM 集群中工作 同时运行多个进程 在多个输入文件上 并使用相同的 bash 脚本 在作业结束时 进程被终止 这是我得到的错误 slurmstepd error Detected 1 oom kill event s in st
  • vCPU 是否可以使用两台不同硬件计算机的不同 CPU

    我搜索过这个问题 但似乎没有得到公平的答案 假设我不想创建一个具有 vCPU 的虚拟机 并且该 vCPU 必须有 10 个核心 但我只有 2 台计算机 每台计算机有 5 个物理 CPU 核心 是否可以通过依赖这两个物理 CPU 来创建一个
  • 在 IBM Cloud 上使用 Spectrum LSF 管理数据

    在 IBM Cloud 上使用 Spectrum LSF 管理数据 在云环境中处理 HPC 工作负载时 要解决的一个关键挑战是如何以最佳方式管理运行工作负载所需的数据 以及可能需要分析以进行进一步处理和决策的输出 通过使用部署在 IBM C
  • 在集群的节点上启动 Jupyter Notebook(高性能计算或 HPC 设施)

    我想在集群的一个节点上运行 jupyter 笔记本 不在登录节点上 我可以在登录节点上远程运行 jupyter 笔记本 但这会不必要地减慢集群的使用速度 请指导我如何从本地桌面在节点上启动 jupyter 笔记本 我们的集群使用PBS作业提
  • 如何检索 slurm 脚本的内容?

    我几天前提交了一份工作 现在仍在运行 但我忘记了内容script sh那天 还有script sh已被删除 您知道如何恢复该脚本的内容吗 在最新版本中 您可以使用以下命令检索您自己作业的作业脚本 scontrol write batch s
  • 如何获取 SLURM 数组作业中失败和已完成作业的计数

    我正在使用 slurm 运行多个数组作业 对于给定的数组作业 ID 假设为 885881 我想列出失败作业和已完成作业的计数 像这样的事情 Input
  • slurm:如何在另一个用户下提交作业并防止读取其他用户的文件?

    基于以下thread https stackoverflow com q 44540590 2402577 我正在尝试向另一个用户发送作业 我登录的身份是main user 并且 slurm 作业通过以下方式提交main user那可以做r
  • 是否可以提交一系列不同的工作来进行 slurm ?

    例如 我有一个名为myScript那个过程one输入文件 我有一个文件名列表 也就是说 我需要运行 myScript
  • 如何更新Slurm中的作业节点号?

    我有一项待处理的工作 我想调整它的大小 我试过 scontrol update job
  • SLURM sacct 显示“batch”和“extern”作业名称

    我已将作业提交到 SLURM 队列 该作业已运行并完成 然后我使用以下命令检查已完成的作业sacct命令 但是查看 sacct 命令的结果 我注意到了我没有预料到的其他结果 JobID JobName State NCPUS Timelim
  • MPI_Isend 和 MPI_Irecv 似乎导致死锁

    我在 MPI 中使用非阻塞通信在进程之间发送各种消息 然而 我似乎陷入了僵局 我用过PADB see here http padb pittman org uk 查看消息队列并得到以下输出 1 msg12 Operation 1 pendi
  • 大规模分布式系统中的日志文件

    我在网格和 HPC 领域做了很多工作 对于分布在数百 或在某些情况下数千 服务器上的系统 我们面临的最大挑战之一是分析日志文件 当前日志文件本地写入每个刀片上的磁盘 但我们也可以考虑使用 UDP Appender 等发布日志信息并集中收集
  • 关于并行任务的 `srun ... >output_file` 的语义

    抱歉 这个问题需要大量的积累 但总而言之 它是关于许多并行实例的条件srun gt output file会或不会导致某些进程 任务破坏其他进程 任务产生的输出 案例 0 仅 bash 无 SLURM 假设prog 0 sh是以下玩具脚本

随机推荐