你在电脑上跑本地 AI 时,最怕两件事同时发生:AI 回答慢,系统也卡。原因很直白:端侧 LLM——直接在手机、电脑等本地设备上跑的大模型——在解码时会一个 token 一个 token 地生成文字;每生成一个 token,它都想临时占用尽可能多的 CPU 核心。但操作系统里的浏览器、终端、后台服务,也在抢这些核心。
Elastic Gang 讨论的就是这场“抢核”怎么调度。作者把 LLM 推理看成一种特殊的 gang:一组核心要一起做同一轮计算,中间还有很多硬同步点。问题在于,普通调度器不能随便把某个核心踢走或加进来;核心走早了,其他核心可能一直等它;核心来晚了,还可能悄悄算错 logits——也就是模型下一步选词前看的分数。
论文的做法是在每个 token 边界重新确认“这一轮到底有哪些核心参加”,没确认的核心就不算进来,最多下个 token 再加入。作者在 AMD Zen 5 8 核/16 线程机器上测试,称 135M 和 7B 模型在成员变化下输出仍能 bit-exact;在 25%、50%、75% 推理占空比下,相比静态 8 核切分,一般任务吞吐分别达到 1.75、1.52、1.28 倍,同时推理吞吐不差。它的意义不只是让本地 AI 更快,而是把“AI 要算力”和“系统要响应”放进同一个调度问题里处理。