Slurm 是一款开源的工作负载管理器,旨在高效管理几乎任何工作负载,并在超大规模环境下提供经过验证的吞吐量。它采用由控制器、节点和分区组成的分层结构,根据策略和资源分配作业,从而优化工作负载分布,最大化集群利用率,并确保高效执行作业。Slurm 由 SchedMD (现隶属于 NVIDIA) 的工程师开发并维护,这些工程师具备深厚的高性能计算 (HPC) 和 AI 专业知识。Slurm 是 TOP500 超级计算机排名前 100 的系统中超过半数所选择的调度器。
Slurm 是市场领先的面向 HPC 和 AI 的开源工作负载管理器,深受全球众多大型超级计算和 AI 环境的信赖。
Slurm 为用户分配一段时间内对资源 (计算节点) 的独占和/或非独占访问权限,以便他们执行工作。它随后会提供一个框架,用于在一组已分配的节点上启动、执行和监控工作 (通常是并行作业)。最后,Slurm 通过管理待处理工作的队列来仲裁冲突的资源请求。
全球顶级超级计算机的工作负载管理器。
Slurm 完全开源且与硬件无关,为资源管理和作业调度提供完全的透明度和灵活性。部署 Slurm,助力其发展,并将其无缝集成到您的基础设施栈中。
在 GitHub 上查看并加入社区!
Slurm 的基础是分配资源、管理待处理工作和执行作业,但正是 Slurm 架构的细节使其成为领先的 HPC 和 AI 工作负载管理系统。
了解如何使用这款深受研究实验室和前沿 AI 领导者信赖的开源工作负载管理器来管理计算资源。
同时管理数十万个核心、数百万个作业和多样化的硬件,需要的不仅仅是基本的调度。Slurm 通过分层作业队列、拓扑感知路由以及可最大化吞吐量的智能作业打包来处理极端并发情况。内置电源管理、策略执行和详细报告功能,使任何规模的大型部署都能够高效、可追溯地运行。
在训练大型 AI 模型或运行多物理仿真时,作业放置与原始计算同等重要。Slurm 的拓扑感知调度可对多层互连架构上的多节点工作负载进行规划,将作业分配给网络结构中物理距离最近的节点,通过降低通信开销来提升性能。结合 GPU 感知和策略驱动的资源分配,团队能够以可预测的方式运行分布式工作负载,而无需等待低优先级或放置不当的作业。
Slinky 是一个组件工具包,能够使 Slurm 在 Kubernetes 环境中运行,从而弥合传统 HPC 与云原生环境之间的差距。团队可以在共享节点池上运行 Slurm 和 Kubernetes 工作负载,将 Kubernetes 资源请求转换为 Slurm 作业。这为研究人员和开发者提供了熟悉的 Kubernetes 工作流,同时受益于 Slurm 卓越的批量调度和资源治理。
常见问题解答
开源工作负载管理器是一种软件,能够自动调度、执行和监控共享基础设施 (例如集群或云环境) 上的计算作业。由于它是开源的,组织可以自由使用、定制和扩展,以满足其性能、可扩展性和运营需求,而无需订阅或企业许可证。
TOP500 是全球最强大的非分布式计算机系统的排名。在 TOP500 榜单的前 100 名系统中,超过半数选择 Slurm 作为调度器,这凸显了其在大规模环境下经过验证的可扩展性和吞吐量。
是的,Slurm 提供领先的 GPU 资源管理,允许用户同时请求 GPU 和 CPU 资源,以确保作业快速高效地执行,同时最大限度地提高利用率。
官方的用户和管理员快速入门指南、版本说明以及其他详细文档已在 SchedMD (现隶属于 NVIDIA) 网站上提供。NVIDIA 还提供了与 Slurm 集成和特性相关的技术博客文章和点播视频。1
可以通过 SchedMD (现隶属于 NVIDIA) 网站上的支持门户提交支持工单。您需要提供一个包含您组织域名的电子邮件地址,以验证您的支持资格。Slurm 和 Slinky 的支持、培训和咨询服务由 NVIDIA 提供。这可以提供来自专家的直接工程帮助,助力实施和定制。2
Slurm 利用其对复杂网络和系统拓扑的理解,在多层互连架构上实现高效的工作负载放置。这可以使延迟最小化、带宽最大化,并提升端到端作业性能,这对于 HPC 和 AI 训练工作负载尤其重要。
SchedMD (现隶属于 NVIDIA) 开发了开源的组件工具包 Slinky,它能够使 Slurm 在 Kubernetes 环境中运行,从而弥合传统 HPC 与云原生环境之间的差距。它使团队能够在共享节点池上运行 Slurm 和 Kubernetes 工作负载,将 Kubernetes 资源请求转换为 Slurm 作业。3
Slurm 针对基于队列的大型、并行作业批量调度进行了优化,优先考虑吞吐量和硬件效率。Kubernetes 专为容器化微服务的声明式、事件驱动的编排而设计。4