章节 01
分离式推理架构实战:AWS EKS上llm-d实现70%吞吐量提升导读
本文介绍一个开源项目,通过在AWS EKS上部署llm-d分离式推理框架,将预填充和解码阶段分离到不同Pod,并利用EFA RDMA实现KV缓存的毫秒级传输,最终使LLM推理吞吐量提升高达70%。该架构解决了传统推理部署中预填充(计算密集)与解码(内存带宽密集)阶段资源需求冲突的问题,为大规模LLM推理服务提供高效解决方案。
正文
这个开源项目展示了如何在Amazon EKS上部署llm-d分离式推理框架,通过将预填充和解码阶段分离到不同Pod,并借助EFA RDMA实现毫秒级KV缓存传输,将LLM推理吞吐量提升高达70%。
章节 01
本文介绍一个开源项目,通过在AWS EKS上部署llm-d分离式推理框架,将预填充和解码阶段分离到不同Pod,并利用EFA RDMA实现KV缓存的毫秒级传输,最终使LLM推理吞吐量提升高达70%。该架构解决了传统推理部署中预填充(计算密集)与解码(内存带宽密集)阶段资源需求冲突的问题,为大规模LLM推理服务提供高效解决方案。
章节 02
LLM推理包含两个核心阶段:预填充阶段(计算密集型,处理输入提示词生成KV缓存)和解码阶段(内存带宽密集型,逐个生成输出token)。传统部署将两者放在同一GPU,因硬件需求不同导致效率低下。分离式推理的核心是将两阶段分配到不同硬件节点,让各节点专注擅长的工作,提升整体效率。
章节 03
llm-d是Kubernetes原生的分布式LLM推理框架,核心是解耦推理过程为独立微服务。参考架构中部署2个预填充Pod(张量并行度TP=4)和1个解码Pod(TP=4),通过高速网络传输KV缓存。该架构的灵活性在于可根据请求特征(如长提示短回复或反之)独立扩缩容预填充/解码资源。
章节 04
分离式推理的挑战是KV缓存跨节点传输延迟。项目使用AWS EFA的RDMA能力,让GPU直接写入远程内存,绕过操作系统内核和TCP/IP协议栈。技术上采用NIXL库配合libfabric协议,实测KV传输延迟约2毫秒,吞吐量超过1GB/s。使用p5.48xlarge实例(配备32个EFA接口,设为efa-only模式)并置于集群放置组,进一步降低网络延迟。
章节 05
项目提供Terraform配置一键部署基础设施:
章节 06
根据项目文档和AWS博客数据,128个并发请求测试中,分离式架构比标准vLLM部署吞吐量提升约70%。提升原因:
章节 07
部署流程分三阶段:1. Terraform创建EKS集群和基础设施(约20-25分钟);2. 配置HuggingFace访问令牌和命名空间;3. Helmfile部署llm-d组件。关键细节:EFA接口需设为efa-only模式(p5.48xlarge实例要求);GPU节点置于集群放置组确保物理紧邻;安全组需配置自引用规则允许RDMA通信。适用场景:高并发在线推理服务、输入提示词长度变化大的应用、精细化资源管理的生产环境、高吞吐量批量推理任务。局限:增加系统复杂性,需额外EFA基础设施,对Kubernetes运维经验要求高;低并发或请求模式简单场景,标准部署更经济。
章节 08
分离式推理代表LLM推理优化的重要方向,通过拆分计算密集型和内存密集型工作负载,配合高速互联技术消除通信瓶颈,为大规模推理服务提供显著性能提升。该开源项目提供完整参考实现和详细部署文档,对构建或优化LLM推理基础设施的团队是极有价值的实践参考。