问题域/PD-424

多 GPU 推理服务

Multi-GPU Inference Serving

基于 Worker Pool 的多 GPU 数据并行推理服务

子问题

1.Worker 池化与请求分发

2.SSE 流式响应

3.UTF-8 多字节安全处理

4.请求验证与防滥用

5.KV Cache prefill-then-clone 显存优化

6.流式生成中的 worker 生命周期管理

各项目的解法1 solutions

Signals

横向对比

维度nanochat
并行策略数据并行:每 GPU 完整模型副本,N 卡 = N worker
调度机制asyncio.Queue 无锁调度,await get/put 实现信号量语义
流式协议FastAPI SSE text/event-stream,逐 token JSON 推送
UTF-8 安全累积 token 解码 + replacement char 检测,跳过不完整序列
防滥用策略请求前置校验:消息数/长度/温度/top_k/max_tokens 全量限制
KV Cache 策略预分配 + prefill-then-clone,FA3 原生 (B,T,H,D) 布局
监控能力/health + /stats 端点暴露 worker 池状态和 GPU 分配

最佳实践

1.asyncio.Queue 实现无锁 worker 分配

2.worker 释放嵌入 stream generator 的 finally 块而非外层 try

3.FastAPI lifespan 确保模型加载完成后才接受请求

4.replacement char 检测实现零延迟 UTF-8 安全流式输出