在两个独立云区域通过公共WAN使用推测解码+CUDA图实现Qwen2.5-7B上28 TPS [P]

Reddit r/MachineLearning 工具

摘要

分布式LLM推理框架ShardFlow通过推测解码与CUDA图缓解WAN延迟,在云区域间对Qwen2.5-7B实现28 TPS。

过去几个月一直在构建ShardFlow——一个分布式LLM推理框架,它能将任何HuggingFace Transformer拆分到N台GPU机器上,并利用神经推测解码处理WAN延迟。基准测试设置如下:两个T4节点分别位于GCP的不同区域(爱荷华+俄勒冈),通过位于俄亥俄州的AWS EC2 TCP中继器通信。公共互联网上往返延迟约86ms。这里推测解码的关键洞察是:WAN延迟不再是每个token的成本,而是每轮的成本。当K=8草稿生成时,每轮往返实际提交4.07个token而非1个。在86ms RTT下这具有重要意义。Qwen2.5-7B上的数据:非推测基线:4.92 TPS;神经草稿生成器(急切模式):14.3 TPS峰值 + 草稿生成器CUDA图:28.10 TPS峰值 / 20.31 TPS均值。同样两个节点测试NF4 4位量化的Qwen2.5-14B:14.43 TPS均值。最令我惊讶的v2.1修复:草稿生成原本从Python循环中每轮启动约1500个CUDA内核。每个内核耗时2-5微秒,Python启动开销8-10微秒。GPU有65%时间处于空闲状态。通过CUDA图捕获完整的0.5B前向传播并使用单次驱动调用重放,草稿生成延迟从112ms降至25ms。技术栈中的其他优化:零拷贝Rust TCP中继器、StaticCache + 就地KV回滚以确保图兼容性、元设备模型分片以避免将15GB数据加载到CPU内存。代码仓库:https://github.com/rautaditya2606/Shardflow 欢迎就推测解码实现或CUDA图相关细节提问。
查看原文

相似文章