电不一定少,只是这一刻不能用得太猛
想象一家餐厅突然被要求:接下来几小时,总用电必须随时低于一条不断变化的红线。厨房不能停,但可以把不着急的菜晚一点做,也可以少开几台耗电设备。问题是,怎样削掉功率,同时尽量不让顾客等到失去耐心?
PowerSlider处理的正是大模型数据中心里的这个问题。这里要先区分功率和能量:能量是一天总共用了多少电,功率则是某一瞬间用得有多猛。即使总电量足够,数据中心也可能因为瞬时供电上限,无法让所有GPU同时满速运行。
电网会通过需求响应(Demand Response)要求用电方在紧张时段临时调整负载。对大模型服务来说,这意味着功率额度会变化,调度系统必须跟着重排工作。PowerSlider的关键判断是:一次推理并非从头到尾都同样怕降频。与其整套系统一起减速,不如先从“降一点频率也不太耽误工作”的环节省电。
本文数字均来自PowerSlider作者的arXiv预印本及其实验,尚无第二个独立机构信源。
同一次回答,三个阶段怕的东西不同
大模型收到问题后,先进行预填充(prefill),也就是读完整段输入。这一步需要大量计算,GPU频率下降,处理速度也近似跟着下降。
随后模型逐个生成词,这叫解码(decode)。论文进一步把推理模型的生成过程拆成“思考”和“回答”:思考阶段可能积累很长的中间序列,回答阶段才输出用户可见的文字。两者都会使用KV Cache——模型保存中间计算结果的显存区域,作用类似草稿纸,避免每生成一个词都从头重算。
差别在于,回答阶段往往更受内存搬运速度限制,而不是纯计算速度限制。论文测得,回答解码在GPU频率降至标称值的0.57倍时,仍可维持吞吐量。预填充却没有这么大的余地。
这就像一条由切菜、慢炖和装盘组成的流水线。三道工序共用一条电力红线时,不该把所有设备统一调慢。更合理的做法是先降低对转速不敏感的设备功率,把有限电力留给一减速就堵塞的工序。
PowerSlider因此把流水线拆成Prefill–Think–Answer三个独立GPU池。每个阶段可以分别调整GPU数量、运行频率和KV Cache容量。思考任务不再和短回答挤在同一批设备上,也减少了长思考链占满显存、拖住后续请求的风险。
先找出哪些等待是可以接受的
只看硬件差异还不够。系统还要知道,哪些请求可以稍慢,哪些必须准时。
PowerSlider把流量分成三类:延迟敏感的LC请求、允许有限变慢的Flex请求,以及可以推迟处理的BE请求。Flex SLO是其中的新接口。SLO即服务目标,例如回答必须在多长时间内完成。Flex合约允许请求在需求响应期间,只有一定比例的时间出现有上限的延迟增长。
这样一来,“用户可以等一会儿”不再是一句模糊承诺,而成为优化器能够计算的约束。系统不能无限拖延Flex请求,也不必像固定优先级方案那样,一限电就先把低优先级流量全部停掉。超过合约等待界限的Flex请求还会被提升到接近LC的优先级,以避免长期饥饿。
每一瓦电,应该从哪里省
真正的难点是选择组合。三个阶段、三种服务等级,再乘上GPU数量、频率和缓存配置,可能性会迅速膨胀;而且功率上限和请求结构一变,原来的答案就可能失效。
PowerSlider使用基于KKT条件的在线求解器。KKT是求约束优化问题最优点的一组数学条件。直观地说,系统会估算:从某个阶段少给一瓦电,会损失多少按时完成的请求。然后从“每瓦电造成性能损失最小”的地方开始削减。
因此,允许有限等待的Flex回答阶段通常先降频;思考阶段可能保持稍高频率;计算密集的LC预填充则尽量留在标称频率。论文称,求解器可在功率上限每次变化后的7.7毫秒内重新计算配置。
调度结果并非只停留在软件模型里。PowerSlider通过GPU硬件功率限制守住总上限;GPU池之间的调整采用“排空后重分配”,让正在处理的请求完成或迁移状态,再改变用途。如果动态电压频率调节(DVFS,即通过降低芯片频率和电压减少功耗)已经降到底,而静态功耗仍无法满足更深的限制,系统会把工作集中到较少设备,并关闭已经排空的实例。
深度限电时,差距才真正出现
作者在SGLang推理系统上,使用Azure推理轨迹和推理型负载,与五种基线方案比较。
在高负载推理场景中,功率上限降低30%时,PowerSlider保留了78.3%的在线Goodput,最佳基线为47.6%。Goodput不是机器做完的全部工作,而是按时完成、满足服务目标的请求比例。这个指标可以避免一种假象:系统看似仍在大量生成文字,但回答大都已经超时。
同一实验中,PowerSlider还保留了54%的BE Goodput,最佳基线则把BE流量降到零。换句话说,它的优势不只是优先保护重要请求,还来自更精细地利用阶段差异和Flex合约,没有一收紧功率就整类停工。
在重放的CAISO电网紧急日中,论文报告PowerSlider平均Goodput为92%。当功率包络降到0.41倍、处于最低谷时,其Goodput仍为54%,所有基线均低于7%。这是历史场景重放,不是真实电网联动部署,但它说明:当功率红线持续移动时,静态配置和统一降频容易迅速失效。
为什么值得关注
PowerSlider把大模型调度问题换了一个坐标系。过去常问的是“怎样用更少的总电量完成推理”;它问的是“电网此刻只给这些功率,应该让哪一步慢下来”。前者追求长期能效,后者处理每一刻都不能越过的硬约束,两者并不等价。
更重要的是,它没有把需求响应简单理解为停机或丢弃低优先级请求,而是同时调用三种弹性:硬件阶段对降频的敏感度、用户可接受的有限等待,以及GPU实例的开关与重分配。算力调度由此开始直接适应电网节奏。
局限与未知
- 全部优势来自同一篇预印本。所谓production traces的来源、规模和公开复核条件交代有限,五个基线的调参与比较公平性仍需进一步核查。
- CAISO实验属于电网紧急日重放,不能证明系统已经在真实需求响应环境中部署;0.41倍功率包络的具体基准也需要结合完整实验设置理解。
- 尾延迟数字可能对应不同负载或基线,不能视为完全相同条件下的统一比较。系统在更大规模、更多GPU代际和真实电网信号下的稳定性仍待验证。