动态VRAM在ComfyUI中:拯救RAMmageddon的本地模型
持续的内存硬件成本激增,已对所有用户造成了挑战。为此,ComfyUI现已推出动态显存——我们自适应记忆增强框架。
该平台始终为运行扩散模型提供了最流畅的方法,现在得到了显著升级。我们的目标仍然是扩大对最广泛的开源模型的可访问性。
现已适用于Windows和Linux(不包括WSL)上的Nvidia系统的ComfyUI稳定版本,此优化显著降低了系统RAM消耗,同时加快了工作流处理速度。动态VRAM转换模型权重管理,确保在内存有限的设备上实现无缝运行。关键增强功能包括:
降低系统RAM需求显著降低了复杂任务的传统RAM要求。
OOM错误消除: 完全解决由于权重卸载不足引起的崩溃。
加速初始化: 在特定场景下,模型和LoRA加载时间显著加快。
无分页依赖: 在没有慢系统页面文件的情况下运行超过物理RAM的模型。
增强VRAM使用:更高的GPU内存利用率表示优化性能(预期行为)。
简化开发预测内存释放的内存预测现在是不必要的。
Windows任务管理器洞察:如果有足够的内存,RAM使用率可能不会立即下降;ComfyUI缓存权重以实现速度和无页文件依赖。内存会在其他应用程序要求时立即释放。
性能指标
ComfyUI保持行业领先的效率为消费者硬件,但现在实现了可衡量的速度提升:
视频分析(WAN2.2双14B fp16/fp8模型,320x320x81f)
Windows,RTX 5060,32GB/64GB RAM

总扩散模型大小:56GB(2×28GB fp16权重)。
Flux 2 Dev 默認工作流程(bf16 文本/扩散)
Linux,Blackwell 6000 Pro

内部工作原理:AI 模型动态卸载器(aimdo)
动态 VRAM 通过自定义 PyTorch 分配器在系统压力下处理模型权重:
VBAR 创建: 模型建立虚拟基址寄存器区域——消耗零物理 VRAM,只有 GPU 虚拟空间。 未分配的张量在过早访问时触发故障。
故障()API:张量在毫秒级别的计算需求时分配物理VRAM。内存响应
可用VRAM:权重永久加载,直到系统压力需要释放。
VRAM不足:临时GPU张量执行操作时不会崩溃。
优先级水印:较新的VBAR拥有最高优先级。低优先级权重的强制驱逐将水印设置为跳过冗余的分配尝试。
更新的内存策略
ComfyUI绕过权重卸载到RAM。相反:
safetensors loader通过指针将文件映射到未提交的内存(禁用深度复制)。
Windows可能会报告高RAM使用率;权重在需要时立即释放。
Linux由于非提交分配将其归类为磁盘缓存。
开发路线图
当前的努力重点是:
解决性能回归。
添加AMD硬件兼容性。
削减内存占用(实验性)
--fp16-中间体优化)为NVMe配置加速磁盘加载。
请在GitHub上报告问题,包括完整的日志、工作流和硬件规格。 在benchmark中,优先考虑工作流的总执行时间,而不是每秒迭代次数。