💡
原文英文,约2800词,阅读约需10分钟。
📝
内容提要
vLLM 0.11.0引入KV缓存卸载功能,将缓存转移至CPU内存(DRAM),提升推理吞吐量。通过缓存KV值,降低计算需求,改善请求延迟和每节点吞吐量。新API支持异步加载和存储KV数据,优化GPU与CPU间的数据传输,显著提升性能。
🎯
关键要点
- vLLM 0.11.0引入KV缓存卸载功能,将缓存转移至CPU内存(DRAM),提升推理吞吐量。
- 通过缓存KV值,降低计算需求,改善请求延迟和每节点吞吐量。
- 新API支持异步加载和存储KV数据,优化GPU与CPU间的数据传输。
- KV值的计算在请求处理生命周期中是计算密集型的,预填充阶段需要专用硬件加速。
- KV缓存卸载可以在请求共享相同前缀时提高请求延迟和每节点吞吐量。
- CPU内存的容量通常超过GPU内存,适合存储更大的KV缓存。
- vLLM的连接器API支持异步加载和存储KV数据,简化了新卸载后端的添加。
- 使用CPU卸载时,可以通过CLI标志轻松启用KV缓存卸载功能。
- CPU卸载通过减少单个请求的处理时间和提高并发请求的吞吐量来提升性能。
- DMA(直接内存访问)用于高吞吐量的数据传输,最小化CPU和GPU核心的开销。
- vLLM的KV缓存布局优化提高了物理块大小,从而提升了卸载连接器的吞吐量。
- 未来版本将进一步改进CPU KV缓存的功能,增强存储卸载的中间层。
- 用户可以在vLLM Slack上分享使用案例和反馈。
➡️