技术实践
Snowflake开源Semi-Persistence实现GPU多模型快速换入换出
概述
服务平台常需托管需求随时间波动的模型:全部常驻GPU浪费昂贵容量,换入换出只有足够快才有意义。vLLM的两种sleep模式各付一条慢路径:要么每次休眠整份GPU到CPU拷贝,要么唤醒时从存储重读全部权重。Semi-Persistence改走第三条路:权重常驻pinned CPU内存池,GPU副本随需求来去;轻量模型骨架独立于权重在磁盘、CPU与GPU间迁移,任何兼容骨架可即刻复原。恢复时把权重分片,经多个PCIe switch并行传输再经NVLink汇聚吃满整机带宽,NVLink使TP1恢复吞吐提升约3.7倍。每个实例是异步状态机,配合按粒度划分GPU槽位的预约系统;由简单规则涌现迁移与合并等自愈调度,如把队头阻塞的7.6秒等待降为零。结果(内部基准,非生产实绩):在8张H200节点上,2B至397B参数的8个开源权重模型端到端休眠唤醒较vLLM快5.6至19.9倍,单GPU模型亚秒级换入换出;万亿参数模型vLLM冷启动需13至15.5分钟,Semi-Persistence约32.8秒恢复,快24至28倍。方案连同实验性调度系统已在GitHub开源;正文自述其为实验性系统,无生产部署证据。