返回 ELI5 知识库首页 🚄 HPC & AI WORKLOAD SCHEDULER
🚄 Slurm Workload Manager · High Performance Computing & LLM Superclusters

什么是 Slurm(超算与大模型集群总调度)?

如果说 Kubernetes 擅长管理 24 小时开门迎客的“在线商场与网页”;那么 Slurm 则是专为超算与大模型训练打造的“高铁特快专列总调度室” —— 按需整车包圆数百台 GPU 服务器、零损耗物理机直通、跑完即走(Batch Job)的算力基石

☸️ K8s:在线微服务(常驻不断电)

永不关门的 24 小时便利店

设计目标是“永远在线”。Pod 默认永不停止,随时准备接待来自全世界的 HTTP 请求;但在多节点批量协同算大模型时,K8s 的网络虚拟化层会带来额外的性能损耗。

Web 容器 (常驻) 24h 监听 80 端口 随机访客 持续微小流量 适合:Web 后台、API 接口、数据库
  • 🔹 面向服务:长期驻留,依靠弹性扩缩容抗峰值流量
  • 排队机制弱:无法像超算一样把数万个大模型训练任务有序排队
VS
🚄 Slurm:离线批量计算(包机专列)

包下整列高铁,算完立即让位

设计目标是“把算力压榨到 100% 极限”。通过 sbatch 提交任务,独占绑定数十台物理节点、RDMA 直通、跑完 3 天训练后自动清理,下一位科研人员接着上!

🚄 Slurm Controller (作业排队与全机独占调度) Job #1024 (DeepSeek 预训练 · 独占 64 节点) 512x H100 GPU 满载狂飙 · RDMA 无损直通 运行剩余时间: 48:21:00 (自动释放) ✨ 全球 TOP500 超级计算机与大模型实验室的绝对标配!
  • 硬件零损耗:无容器网络虚拟化折损,直接裸机物理直通
  • 公平排队(FairShare):按团队配额优先级严格调度数万任务
💡

一句话顿悟:为什么名字叫 Slurm?

它的全称是 Simple Linux Utility for Resource Management(极简 Linux 资源管理系统)。 虽然名字里带着“Simple”,但它却统领着全人类最庞大的超级计算机(如美国劳伦斯利弗莫尔国家实验室、Meta 万卡 Llama 训练集群)!

拆解 Slurm 调度体系的 4 大核心王牌

从三剑客命令到多机拓扑绑定,搞懂超算集群的工作逻辑

📜

1. sbatch 批处理提交脚本

写个脚本声明 #SBATCH --nodes=8 --gpus=64 --time=24:00:00。脚本提交后你可以关电脑睡觉,Slurm 自动排队并拉起训练!

🚦

2. squeue & srun 实时控制

squeue 查看当前谁在排队、谁在算;srun 则允许研究员直接启动交互式终端,实时查看显卡输出或打断点调试。

⚖️

3. FairShare 公平分享算法

防止某一个土豪研究员把所有显卡霸占光。Slurm 会动态计算各个团队的历史用量,谁最近用得少,谁的新任务优先级自动飙升!

4. 极速 MPI 与 PyTorch DDP 绑定

与 InfiniBand / RoCE 网络深度集成,根据网络拓扑将任务分配在同一个交换机下的最近节点,最大化全卡通信带宽。

🕹️ Slurm 作业排队与资源调度演练台

观察研究员提交大模型训练任务后,Slurm 如何根据集群物理节点进行分配与释放:

🚄 Slurm 活跃作业表 ($ squeue)
JOB 9001: llama3_pretrain RUNNING (Node 1~8 · 64 GPU)
JOB 9002: deepseek_lora PENDING (Resources)
🚄 $ sbatch --nodes=8 --gpus=64 run.sh
Submitted batch job 9001.
节点已分配:node[01-08] 全部 64x H100 满载运行。
NCCL Ring-AllReduce 吞吐达到 400 Gbps 满载!
✔ 物理节点硬件独占 · 零虚拟化损耗
🏛️ 超算血统

诞生自美国国家级实验室

Slurm 最初由劳伦斯利弗莫尔国家实验室(LLNL)主导开发,用于模拟核试验与前沿物理计算。

全球前 500 大超级计算机(TOP500)中,超过 60% 以上都运行着 Slurm

🤖 大模型巨头的抉择

Meta / OpenAI 的底层架构

Meta 训练其数百亿/千亿参数的 Llama 3 旗舰大模型 时,其底层算力集群正是基于 Slurm + PyTorch 搭建。

原因很简单:万卡集群下,微秒级的通信延迟差异就意味着几千万元的电费损耗!

🌐 K8s 与 Slurm 共存

双雄并立的 AI 基础设施

在现代顶尖 AI 公司中:训练端(Training)用 Slurm,追求纯粹的裸机算力与网络吞吐极限;

推理服务化端(Inference)用 Kubernetes,享受其强大的 HTTP 路由、弹性伸缩与多租户隔离。