HPC Digital Twins for Evaluating Scheduling Policies, Incentive Structures and their Impact on Power and Cooling

framework 2508.20016 — Cross-paper Synthesis

S-RAPS (2508.20016) — L3 per-paper synthesis #

Scope note: 任务给出的两个 id 是别名,已归一化到实际 KB 文件: 2310.0724 → 2310.07240(CacheGen),2401.0967 → 2401.09670(DistServe)。 八个 peer 全部 category: framework,但全部属于 LLM serving / training 世系, 而 target 属于 HPC 批调度 + 设施协同仿真 世系。这不是一个同题竞争簇, 而是一个"同类别、异领域"的对照簇——本篇 L3 的价值因此不在 metric 对拼, 而在于把两条互不引用的调度演化线放到同一张坐标系里,看它们在 调度粒度 / 抢占 / 未来信息 / 目标函数 四个轴上分别走到了哪。

1. 相关论文 #

八个 peer 按与 S-RAPS 的连接方式分成三层,连接强度递减。

第一层 — 同构方法论:仿真器驱动的策略/放置搜索。

第二层 — 同问题异领域:队列堆积、head-of-line blocking、碎片。

第三层 — 目标函数与状态管理的对照。


2. 本篇 vs 相关论文的 delta #

2.1 真正 net-new 的三件事 #

  1. 把物理设施拉进调度评估的闭环,这在整个 framework 类别里没有第二篇。
  2. 八个 peer 的目标函数覆盖 throughput(vLLM [2309.06180])、

    JCT(FastServe [2305.05920])、per-GPU goodput

    (DistServe [2401.09670])、TTFT + cost

    (CachedAttention [2403.19708]、CacheGen

    [2310.07240])、samples/sec(FlexRLHF

    [2312.11819])——没有一篇报告瓦特。

    即便是最接近成本语义的 CacheGen 与 CachedAttention,成本也是美元计价的存储/算力

    账单,而不是功率摆幅、PUE 或冷却塔回水温度。S-RAPS 是唯一一篇把

    "换调度策略 → 功率形状变化 → PUE 与回水温度变化"这条因果链端到端跑通的

    [2508.20016]。这不是增量,是新的因变量。

    1. 激励结构(incentive)作为调度输入。 两阶段实验(replay 作收集期产出
    2. accounts.json,赎回期五次运行从同一份账户历史派生优先级)

      [2508.20016] 引入了一个社会-技术目标:

      用户行为可以被计价机制塑形。八个 peer 里公平性最多以 starvation prevention

      (FastServe 的 $\alpha$ 阈值 [2305.05920])或

      "无公平性保证"(SGLang 显式承认 greedy 会 starve

      [2312.07104])的形式出现,从来不是可设计的旋钮。

      1. 预填充(prepopulation)作为仿真方法论纪律。 S-RAPS 把
      2. "仿真起点前已在跑的作业必须被放置到系统上"提升为正确性要求,并点名同行

        忽略这一点会"distorting the results" [2508.20016]。

        这是一个纯方法论贡献,见 §2.2 矛盾 1。

        2.2 三处实质性矛盾及其根因 #

        矛盾 1 — 冷启动是否会污染结论。

        S-RAPS 断言忽略仿真起点前的作业会使调度模拟器"need time to fill up the queue

        and system, distorting the results" [2508.20016]。但本簇的

        LLM serving peer 全部从空系统起跑合成到达流并把结果当作有效:vLLM 用 Poisson

        到达 [2309.06180],DistServe 同样以 Poisson 到达喂三种

        workload [2401.09670],CachedAttention 明确写出

        $\lambda=1.0$ [2403.19708]。没有一篇报告过预热状态的处理。

        矛盾根源 — 作业时长与观测窗口的比值。 HPC 作业时长以小时计而仿真窗口是

        一天到 15 天,起点前作业占据窗口的相当比例,且 PUE 与回水温度是积分量,

        初值错误会累积 [2508.20016];LLM 请求时长以秒计而 benchmark

        窗口以分钟计,预热瞬态相对稳态可忽略,且 TTFT/TPOT 是瞬时量,不积分。

        两边在各自时间尺度内都正确,但 S-RAPS 把它表述为对"scheduling simulators"的

        普遍指控,越出了它的适用域。

        矛盾 2 — "优先小作业"够不够。

        S-RAPS 的 ML 打分函数梯度处处为负,最优解总在特征取值域边界,因此在高负载下

        退化为"优先小作业",论文自己承认这一点,并报告该策略取得最低 turnaround 与 EDP

        [2508.20016] [2508.20016]。但 FastServe

        的整篇论证就是"朴素的短任务优先不够":naive MLFQ 的两个变体分别因抢占浪费已完成计算

        和大任务堵在 $Q_1$ 而慢 24×–32×,必须用 skip-join 才能把已知的 prefill time

        用对 [2305.05920]。

        矛盾根源 — 抢占是否存在。 FastServe 的失败模式(抢占浪费已完成计算)在

        S-RAPS 里结构上不可能发生:分配粒度是整节点、无抢占、run-to-completion

        [2508.20016]。反过来,FastServe 的 3.6×–41× 收益也对

        HPC 完全不可用。所以两者不是对立结论而是不同机制假设下的定理;真正可批评的是

        S-RAPS 从未给出 ML 策略相对朴素 SJF 的定量差值——同一张 Fig. 10 里 SJF 就在旁边

        [2508.20016]。

        矛盾 3 — "利用率 ~100%"是不是好消息。

        S-RAPS 把 backfill 将 PM100 利用率从 ~80% 推到 ~100% 当作核心成功信号

        [2508.20016]。FastDecode 则证明高占用率与高效率是两件事:

        decode 阶段是 gemv,GPU 被占满但利用率极低,扩 batch 是唯一出路

        [2403.11421];vLLM 也指出当 KV 内存充裕、序列短时系统

        转为 compute-bound,内存优化收益消失 [2309.06180]。

        矛盾根源 — "utilization"是两个不同的量。 S-RAPS 的 utilization 是

        按节点占用计的账目量 [2508.20016],且共享节点作业被过滤掉

        [2508.20016];LLM 侧的 utilization 是 FLOP 或带宽的

        达峰比例。一个被记为 100% 占用的节点完全可能在跑一个 memory-bound 作业、

        只用到峰值算力的百分之几。S-RAPS 的度量在它自己的语义下无误,但

        "利用率 80%→100%"不能被读成"算力浪费被消除"——恰恰因为它同时报告了

        每作业平均功率 $-2\%$、作业规模 $-5\%$,这个组合更像是作业混合被改变,

        而非同样的工作被更高效地做完。

        2.3 借来的与增量的 #

        • 插件化 dataloader + 抽象调度器接口是标准的框架工程动作,其价值等价于
        • FlexRLHF 的 Model Placement Ratio 抽象(用一个 0–1 比例值把复杂配置压成

          可配项)[2312.11819]——都是把硬编码提升为配置面,

          都因此付出"最优配置仍需手工调"的代价。

        • 顺序 vs plugin 两种耦合模式的取舍("reduces communication between the two
        • simulators at the cost of additional computational overhead")

          [2508.20016] 与 DistServe 在

          segment-colocation 约束下权衡"通信本地性 vs 放置自由度"

          [2401.09670] 是同一类决策;差别在 DistServe

          把这个约束折进搜索并用 DistServe-Low vs DistServe-High 消融量化了它的代价

          [2401.09670],而 S-RAPS 只给出定性结论与一个顺序模式的

          688× 数字,plugin 模式的速度从未报告 [2508.20016]。


        3. 可攻击面 #

        Attack 1 — 头号结果的构造性偏差被承认但未被消除,而同簇有现成的消融范式。

        Fig. 4 的 80%→100% 对比在构造上就对 replay 不利:PM100 过滤了共享节点作业,

        且缺少 down/drained 节点信息使重排一侧占优——作者自己把 Frontier 的利用率优势

        归因于后者而非策略优越 [2508.20016]。诚实值得肯定,但诚实

        不等于证据。DistServe 面对同一类质疑("收益到底来自 disaggregation 还是

        并行度调优?")的做法是构造 vLLM++ 这个"在 colocation 下做最优并行搜索"的中间基线,

        证明它 ≈ 原始 vLLM,从而把因果钉死在 disaggregation 上

        [2401.09670]。S-RAPS 完全可以做等价的事——例如人为注入

        合成的 down/drained 节点掩码,或不过滤共享节点而按核数近似——但没有做。

        结论是:backfill 的收益量级目前不可归因。

        Attack 2 — 调度侧论证的严谨度低于同簇标准,而这恰是论文的主战场。

        S-RAPS 的框架部分无形式化模型,仅实证 [2508.20016]。这在

        framework 类别里不算孤例(vLLM [2309.06180]、FastServe

        [2305.05920]、CacheGen [2310.07240]、

        CachedAttention [2403.19708] 都没有统一解析模型)。但

        S-RAPS 做了一个更强的声明:存在一个"低负载策略无关 / 高负载策略强相关"的

        相变,两个区间由 Adastra 与 Fugaku 的 16% 请求节点利用率窗口 vs PM100/Frontier

        高负载窗口划出 [2508.20016]。声明相变而不给相变边界的解析刻画

        (哪怕只是到达率/服务率比与作业规模分布的两参数判据),是本篇最实质的方法论欠账

        [2508.20016]。同簇有两个可效仿的先例:DistServe 用 M/D/1

        排队模型预测出 intra-op 与 inter-op 的交叉点并解释它为何是内点最优

        [2401.09670];SGLang 证明 greedy 调度等价于离线最优 DFS 并给出

        cache 容量 $\geq$ 最大请求长度这个明确的边界条件 [2312.07104]。

        两者都说明:调度学科的相变边界是可以写出来的。

        Attack 3 — ML 打分函数的自陈机制与其数学行为不符,且未与同图基线做定量对比。

        L2 的六项检查已经指出:量纲不一致(时长/功率/内存混合取根号)、论文声称指数

        "captures fine-grained differences" 但把 $X$ 从 100 增到 10000 只造成 $\sim0.1$

        的分数差、$\alpha_j$ 与 $K$ 均未给出因此无法一阶回代

        [2508.20016]。放在簇里看,这个欠账比表面更重:FastServe 的

        可比部件(profiler 预测 prefill time 后决定入队层级)配了独立消融

        (skip-join vs naive MLFQ 3.6×–41×)[2305.05920],

        SGLang 的每个组件都有 ablation 证明其 load-bearing(去掉树结构 / 去掉

        cache-aware 调度 / 去掉 frontend hint 各自都退化)[2312.07104]。

        S-RAPS 的 ML 策略与 SJF 同框出现却无差值,且"consistent trends across datasets"

        的表述与两个子图都只标 Fugaku、附录确认只用 F-Data 相冲突

        [2508.20016]。

        Attack 4 — 论文最需要的那个模式,性能从未被报告。

        688× 实时来自顺序耦合(FastSim 排完再交给 RAPS);而实时孪生必须走 plugin

        模式,其速度全篇缺失,两份系统状态副本的一致性也只有一句

        "requires both S-RAPS and FastSim to maintain separate copies of the system state"

        [2508.20016]。附录披露的 ScheduleFlow 缺陷

        (会排到不可用节点、"does not always occur"、根因未查明)正是这类状态漂移的

        竞态实证 [2508.20016]。对照 FastDecode:它同样

        存在两个异步子系统的 bubble 问题,但明确指出 bubble 源于

        temporal workload heterogeneity 且 load-stabilizing schedule 只能部分缓解、

        根本矛盾无法消除 [2403.11421],并把最差区间

        (短序列 8 sockets 效率退化到 37.6%,反而低于 4 sockets)报了出来

        [2403.11421]。S-RAPS 对 plugin 模式既无量化也无失败区间刻画。

        Attack 5 — 最有价值的那条证据链只在一台不公开的机器上成立。

        PUE 与冷却塔回水温度的分叉(Fig. 6)是全篇唯一把调度决策传导到冷却塔的证据,

        但它依赖 Frontier——唯一有经过验证冷却模型、也是唯一不公开数据集的系统

        [2508.20016];且"No open cooling model was available at the

        time of writing, e.g. for PM100" [2508.20016]。再叠加

        FastSim 闭源、代码托管在 code.ornl.gov 而非 GitHub

        [2508.20016],可复现性画像是:**框架可复现,

        核心论点不可复现**。簇内对照鲜明——vLLM 是事实标准引擎

        [2309.06180]、SGLang 的 radix cache 可定位到

        radix_cache.py 行号 [2312.07104]、DistServe

        [2401.09670] 与 CacheGen

        [2310.07240] 均开源;而 FlexRLHF 未开源的后果

        已有前车之鉴:核心思想被 OpenRLHF 等吸收,论文本身只作为 design reference

        [2312.11819]。


        4. 生态位 #

        范式定位:它是"调度评估"这条线上唯一把因变量下移到物理层的一篇。

        把本簇按"调度决策影响什么"排序,会看到一条清晰的下移轨迹:

        vLLM 把决策影响限定在 KV 内存占用 [2309.06180] →

        FastServe 下移到队列延迟分布 [2305.05920] →

        SGLang 下移到跨请求的缓存命中结构 [2312.07104] →

        DistServe 下移到 GPU 池的物理放置与互连拓扑 [2401.09670] →

        CachedAttention / CacheGen 再下移到存储层级与网络链路

        [2403.19708] [2310.07240] →

        S-RAPS 落到配电与冷却。这条轨迹本身就是 framework 类别近年的主线,

        S-RAPS 是目前的末端节点。它的生态位不是"更好的调度器",而是

        "调度器的物理后果可被离线观测"这一能力的第一个可用实现。

        它明确选择不竞争。 论文对十余个既有调度模拟器的姿态是

        "we do not compete but try to enable them, and provide example integration in

        the source-code" [2508.20016]。这与 DistServe 式的

        "替换你的引擎"或 vLLM 式的"成为默认引擎"是完全不同的采用模型:接入成本被压到

        写一个 dataloader 插件,代价是强制下游接受两个约束(外部调度器必须能应答

        "给定时间步的运行作业列表";冷却侧必须有 Modelica 模型)

        [2508.20016]。ScheduleFlow 正是在第一个约束上性能崩掉的

        [2508.20016]——这说明"不竞争、只接入"的姿态并非零成本。

        采用证据:机构强、公开弱。 强的一侧:作者横跨 ORNL / Texas State / NREL /

        Colorado State / LLNL,数据来自 Frontier、Marconi100、Fugaku、Lassen、Adastra

        五个 top-tier 系统,三个分支将合并回 ExaDigiT 基线仓库

        [2508.20016]。这种"作者与数据的机构分布"本身就是采用面证据,

        是任何 LLM serving peer 都不具备的资产。弱的一侧见 §3 Attack 5。

        准入门槛极低也值得记一笔:依赖只有 Python 3.9+ 与常规科学栈,硬件要求是

        "Laptop capable of running python 3.9+",无 GPU 无集群,全部复现预算数小时

        [2508.20016]——这与需要 16×A100

        (FastServe [2305.05920])或 128 GPU

        (FlexRLHF [2312.11819])的 peer 形成

        量级差,是它作为"规划工具"而非"服务组件"的直接体现

        [2508.20016]。

        适用下界是它自己交出来的。 Adastra 15 天低负载下所有重排曲线塌成一条线、

        策略无关 [2508.20016]。这个空结果在簇内有精确的同类项:

        FastServe 承认低负载下 MLFQ 退化为 FCFS、均匀 job size 分布下优势消失

        [2305.05920];SGLang 承认长输出多轮对话

        "almost no speedup" [2312.07104];vLLM 承认 OPT-175B/Alpaca

        下优势缩小 [2309.06180];CacheGen 承认短上下文与超高带宽下

        回退 [2310.07240]。**所有调度/缓存类优化都有一个"资源充裕则

        无效"的下界**,这是本簇最稳固的跨论文规律,也是 S-RAPS 的空结果不该被当作缺陷

        而该被当作定位的理由。


        5. 未探索方向 #

        1. 把 S-RAPS 的物理协同仿真环接到 LLM 推理集群上(S-RAPS × DistServe)。
        2. 这是本簇最直接、也最少人做的空白。DistServe 已经有一个被验证到 <2% 误差的

          调度侧仿真器与解析延迟模型 $T_{Prefill}/T_{Decoding}$

          [2401.09670],正好是 S-RAPS 三段调度器契约所需要的那种

          "能应答给定时间步运行作业列表"的组件 [2508.20016];

          而 S-RAPS 有功率模型与 Modelica 冷却链路。把两者对接,就能第一次回答

          "把 prefill/decode 拆开后,机房的功率摆幅与 PUE 怎么变"。注意液冷是硬前提:

          S-RAPS 的 PUE/回水温度只在液冷 CDU-冷却塔链路上有意义

          [2508.20016]——而这恰好是现代 GPU 集群正在走的方向。

          1. 功率感知的 goodput:把 EDP/ED2P 接进 SLO 目标。
          2. DistServe 的 goodput 定义是"每 GPU 每秒在 SLO 内完成的请求数"

            [2401.09670],分母是 GPU 数——一个静态成本代理。

            S-RAPS 用 EDP / ED2P 作为调度侧指标 [2508.20016],

            即把能量显式写进目标。"每焦耳的 SLO 内请求数"这个目标函数目前没有任何

            serving 系统在优化,而 DistServe 的 placement search 框架天然可以换目标函数。

            1. 给 HPC 批调度引入分页与抢占;给 LLM serving 引入 backfill。
            2. §2.2 矛盾 3 指出的粒度差留下一个双向空白。正向:vLLM 证明把分配单元从

              "按最大长度连续预留"切成 16-token block 可以把有效利用率从 20.4%–38.2%

              拉到接近满 [2309.06180],且 swap 与 recompute

              两种恢复路径使抢占可行 [2309.06180];而 S-RAPS

              停在整节点、无抢占、且明确未实现 best-fit / conservative backfill

              [2508.20016]——一个"可抢占 HPC 作业 + 检查点重算"

              的策略族在孪生体里是可评估而未被评估的。反向:EASY backfill 的核心动作

              (用小作业填节点碎片而不推迟队首作业的保留开始时间)在 KV 内存维度上

              有精确对应——"在不违反排队请求的预留 KV 块的前提下放行小请求",

              而 SGLang 承认它的 greedy 顺序会 starve、没有公平性保证

              [2312.07104],正是 backfill 那套"保留 + 回填"纪律要解决的问题。

              1. 未来信息的中间态:把 semi information-agnostic 引入 HPC 重排。
              2. 本簇在"未来信息"轴上有三个明确位置:S-RAPS 端点是零 clairvoyance

                [2508.20016];FastServe 位于中间——input length 已知、

                output length 未知,因此 SRPT 不可用而 MLFQ 不够,skip-join 是对这个中间态的

                最优利用 [2305.05920];CachedAttention 位于另一端,

                直接把调度器队列制造成 Belady oracle [2403.19708]。

                S-RAPS 的 app-fingerprinting 流水线(K-means 聚类 → Random Forest 从提交前

                特征预测簇 → 每簇一个回归模型预测运行时长/功率/内存)

                [2508.20016] 实际上已经把 HPC 推到了 FastServe 的那个

                中间态——请求节点数与用户历史已知、真实运行时长未知。但它把预测结果喂进了

                一个静态打分函数,而不是喂进一个能容错的队列结构。用 skip-join MLFQ 的

                思路重做(按预测时长跳入相应量子的队列、预测错了由降级机制吸收),

                比继续调 $\alpha_j$ 更有希望,且天然回答了 §3 Attack 3 的"凭什么优于 SJF"。

                1. 把预填充纪律反向输出给 LLM serving 的 benchmark 方法学。
                2. §2.2 矛盾 1 的分析给出了一个可检验的推论:当 LLM 服务的会话生命周期从秒级

                  拉长到小时级——多轮对话与 agent 会话正在发生这件事,CachedAttention 的

                  idle 会话可以静默数分钟后重现 [2403.19708]——预热瞬态

                  相对观测窗口就不再可忽略,S-RAPS 的预填充要求就从 HPC 特有变成普遍必要。

                  目前没有任何 serving benchmark 报告"仿真起点已在运行的会话及其 KV 状态"。

                  这是一个纯方法学 gap,成本极低,影响面覆盖整簇。

                  1. 激励结构 × 异构硬件的能耗剖面。
                  2. S-RAPS 的四种赎回期优先级键(avg power / low avg power / EDP / Fugaku points)

                    都建立在同质硬件上 [2508.20016]。FlexRLHF 已证明异构放置

                    (推理放 V100、训练放 A100)在功能上可行 [2312.11819]。

                    在能耗剖面差异巨大的异构集群里,"按用户消耗的焦耳而非节点小时计价"会改变

                    作业向硬件的自选择——这是一个孪生体可以模拟、生产系统绝不敢直接上线的实验,

                    正好落在 S-RAPS 自我定义的用途上 [2508.20016]。