
ComfyUI性能优化实战按显存档位选参数从OOM到多卡并行【免费下载链接】ComfyUIThe most powerful and modular diffusion model GUI, api and backend with a graph/nodes interface.项目地址: https://gitcode.com/GitHub_Trending/co/ComfyUI如果你的 ComfyUI 队列一直转圈、终端里跳出CUDA out of memory或者家里插了两张卡却始终只有一张在干活那问题多半不在工作流而在启动参数。ComfyUI 是一个节点式的扩散模型 GUI、API 与后端它的速度上限很大程度由显存管理策略和注意力后端决定。这篇 ComfyUI 性能优化速查按硬件分档整理你对着自己的显卡对号入座即可不需要从头到尾读。显存档位速查按你的卡挑一套启动参数ComfyUI 默认使用动态显存管理模型用完后会卸载回内存多数情况下不填参数已经是合理起点。下面三张配置卡覆盖最常见的显存区间直接复制启动命令即可。显存档位推荐启动参数注意事项4GB--lowvram --reserve-vram 1文本编码器放内存运行速度慢但稳8GB--fp16-unetUNet 用半精度显存占用约减半12GB--highvram加注意力参数模型常驻显存省去反复装卸的开销以 8GB 档为例在仓库根目录执行python main.py --fp16-unet4GB 卡的启动命令同理python main.py --lowvram --reserve-vram 1--reserve-vram 1的意思是给系统和桌面进程留出 1GB 显存余量数值可按你的系统负载微调。12GB 以上显存时加上--highvram配合下一节的注意力参数效果最明显。Nvidia 与 AMD注意力后端怎么选注意力计算是扩散采样里的算力大头选对后端比调其他参数更有效。Nvidia 与 AMD 的默认路径不同这是 ComfyUI xformers 配置差异的核心。Nvidia 显卡Nvidia 环境下 ComfyUI 会优先使用已安装的 xformers通常无需额外操作。如果你的驱动和 CUDA 较新可以显式指定更快的后端python main.py --use-flash-attention量化友好的 Sage Attention 也是选项之一--use-sage-attention。若某个后端在你的环境里出图异常用--disable-xformers强制回退到原生实现再排查。AMD 显卡ROCm 6.4AMD 路线上 xformers 支持有限推荐直接用 PyTorch 2.0 的交叉注意力实现python main.py --use-pytorch-cross-attention --fp16-unet如果出图发黑或数值异常可以尝试--force-upcast-attention强制把注意力上转回高精度。完整参数清单都在 comfy/cli_args.py 里遇到不认识的开关可以翻源码里的 help 说明。OOM 报错或卡顿时先查这张急救表把症状和参数对应起来比盲目换配置更快定位问题。以下四行覆盖了最高频的 ComfyUI OOM 场景症状先看哪里可调整的参数生成中途 OOM显存余量是否够装当前模型--reserve-vram调小预留、或--lowvram把文本编码器挪到 CPU首张图慢、后续明显变快模型反复装卸带来的固定开销显存富余时加--highvram让模型常驻多张大模型交替使用时频繁掉卡智能显存把模型留在显存里放不下--disable-smart-memory强制卸载到内存AMD 卡出图发黑或报错注意力后端未正确启用--use-pytorch-cross-attention定位时建议打开详细日志观察显存报告的输出python main.py --verbose启动阶段的日志会打印检测到的 GPU、显存总量和 ComfyUI 选定的 VRAM 模式确认它看到的显存是否符合预期是排查的第一步。ComfyUI 多GPU实战指定主卡与多实例并行ComfyUI 不会在单进程内自动做跨卡负载均衡多卡要靠系统级手段分工下面两种用法按场景选。 场景一指定主卡多张卡但只需要一张跑生成任务时用环境变量锁定主卡避免 ComfyUI 挑到显存被占满的那张CUDA_VISIBLE_DEVICES0 python main.py --highvram场景二多实例并行跑批量任务批量出图比如跑 blueprints/ 里的一组官方示例工作流时每张卡起一个独立实例各自监听不同端口# GPU 0 实例 CUDA_VISIBLE_DEVICES0 python main.py --port 8188 # GPU 1 实例 CUDA_VISIBLE_DEVICES1 python main.py --port 8189之后通过 API 把任务轮询分发到 8188 和 8189 两个端口总吞吐近似线性翻倍。注意两个实例会各自加载一份模型系统内存要留足空间。优化前后怎么验证记录三个指标优化是否生效不能凭感觉建议先记录一组基线改参数后重跑同一工作流对比。看三个数就够单图生成耗时同一工作流连跑 3 次取中位数排除首张图的冷启动影响。显存峰值生成期间用nvidia-smi -l 1观察峰值确认没有贴着上限跑。多卡利用率多实例部署时逐卡看负载确认任务真的摊到了第二张卡。下面这张图展示了 ComfyUI 模型组合的标准工作流了解耗时花在哪个环节Checkpoint 加载、采样还是 VAE 解码才能判断该优化哪一步对比出图时固定提示词、种子和分辨率只改配置。例如有用户把注意力后端从默认切到 Flash Attention 后一张 512x512 的生成时间从约 40 秒降到约 20 秒示例数据具体数值取决于你的硬件和模型。下面是项目自带的示例生成图可当作出图效果的对照样本收尾先让一套参数稳定跑通ComfyUI 性能优化的核心不是堆参数而是让显存档位、注意力后端和你的实际硬件对齐小显存保稳定大显存保吞吐多卡靠端口分工。下一步很简单——按上面的速查表挑一套命令记录今天的基线数据然后从最保守的改动开始逐项调整。【免费下载链接】ComfyUIThe most powerful and modular diffusion model GUI, api and backend with a graph/nodes interface.项目地址: https://gitcode.com/GitHub_Trending/co/ComfyUI创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考