你有四张还能工作的老款显卡,却发现大模型服务软件并没有认真照顾它们:硬件擅长 8 位整数计算,软件链路却处处卡壳。结果就像仓库里有四辆货车,装卸口和道路却没有修通。Reddit 用户 1ncehost 给出的方案,是把这条路从头到尾补齐。
作者称,自己为四张 AMD MI100 搭建了一套完整的 INT8 大模型服务栈,在一台自报成本 6500 美元的机器上运行其所称的“Qwen3.8 27B C8”模型,测得 972 tok/s 的 TG 和 5680 tok/s 的 PP。这里的 token 是模型处理文字时使用的基本单位;吞吐表示整套系统每秒为所有请求处理或生成多少 token,并不等于单个用户看到的生成速度。
这些数字全部来自作者的一篇 Reddit 自述,目前没有论文、官方说明、代码仓库链接、可复现实验日志或第三方测试交叉验证。
它不是只换了一个零件
方案以 vLLM 为主框架。vLLM 是面向大模型在线推理的开源服务引擎,负责装载模型、调度并发请求,并调用 GPU 上的底层计算程序。作者在此基础上结合 AITER、GPTQ INT8 量化和 DFlash2,为 Qwen3 架构加入张量并行的 INT8 支持。张量并行,就是把一个模型的计算拆到多张显卡上共同完成。
INT8 量化会用 8 位整数表示权重或参与计算,以减轻显存和数据传输压力。但仅把模型文件压小并不够。推理过程中的矩阵乘法、注意力、缓存和多卡通信,都要认识并高效处理 INT8,否则加速会在链路中途丢掉。
作者列出的改造因此很长:W8A8 INT8 GEMM、INT8 KV cache、INT8 Unified Attention、GDN attention、Embedding,以及针对 XGMI 显卡互连优化的 all-reduce 和 all-gather。GEMM 是模型里反复执行的矩阵乘法;KV cache 是模型生成文字时保存的中间结果,避免每次从头重算;all-reduce 和 all-gather 则负责多张显卡之间汇总、交换数据。
他还加入多种融合内核。内核是直接在 GPU 上执行的一小段程序,融合内核把原本分开的多步运算合在一起,减少启动和搬运数据的开销。说白了,这项工作的重点不是某个孤立的加速技巧,而是让 INT8 从模型入口一路贯通到计算、缓存、注意力和多卡通信。
15 到 972,真正说明了什么?
作者自报,同一套系统使用原版 vLLM 时,TG 只有 15 tok/s;换用其分支后达到 972 tok/s,约为原来的 64.8 倍。另一个数字 5680 tok/s 对应 PP。预填充是模型先读入提示词、建立内部状态的阶段,它的速度会影响长提示和多人并发时的等待。
这组结果最值得注意的地方,是旧硬件的部署性价比可能更多取决于软件是否匹配,而不只是显卡年份。作者认为,这些优化还能推广到缺少原生 FP8 能力、但 INT8 算力更强的旧款 AMD 和 Nvidia GPU。不过这仍是作者判断,并未展示其他显卡上的结果。
精度方面,作者称系统接近参考质量,并逐项检查了每次 GEMM、注意力模块、KV 查询、网络层和 token。他还声称 INT8 AITER Unified Attention 及其 Triton 后备实现快于 Flash Attention,而 MTP 在多数使用场景下慢于 DFlash2。这些说法尚无具体精度指标、测试集、误差阈值或完整对照数据支撑。
局限与未知
- TG、PP 的正式含义及测试口径没有说明;并发数、输入输出长度、batch size、上下文长度、采样参数、功耗和计时方式均缺失,因此不能把 972 tok/s 当成单请求速度,也不宜与其他机器直接比较。
- “Qwen3.8 27B C8”、DFlash2 等名称,以及模型量化文件、仓库版本、提交记录和复现脚本是否公开,供稿材料无法核实。
- 6500 美元没有采购时间、设备构成和价格明细;“完整”“接近参考精度”“比 Flash Attention 更快”等均为作者自评。