pollockjj/ComfyUI-MultiGPU

This custom_node for ComfyUI adds one-click "Virtual VRAM" for any UNet and CLIP loader as well MultiGPU integration in WanVideoWrapper, managing the offload/Block Swap of layers to DRAM *or* VRAM to maximize the latent space of your card. Also includes nodes for directly loading entire components (UNet, CLIP, VAE) onto the device you choose

解决的问题

ComfyUI-MultiGPU 解决了运行大型 AI 模型时 GPU VRAM 有限的问题。它允许用户将模型组件(如 UNet、VAE 或 CLIP)分布到多个 GPU,或将它们卸载到系统 RAM(CPU DRAM),从而释放主要计算 GPU 的 VRAM,用于更大的潜在空间处理,例如生成更长的视频或更高分辨率的图像。

工作原理

该项目使用一个名为 DisTorch(分布式 Torch)的系统,将模型的静态部分从主计算显卡移出。它提供了几种分配模式:

  • 普通模式:使用简单的滑块将特定数量的“虚拟 VRAM”卸载到单个捐赠设备。
  • 专家模式:通过文本字符串对三种不同策略提供精确控制:
    • 字节:为每个设备指定精确的 GB 或 MB(例如 cuda:0,2.5gb;cpu,*)。
    • 比例:根据百分比比例分配模型(例如 cuda:0,25%;cpu,75%)。
    • 分数:根据每个设备总可用 VRAM 的分数进行分配。

适用对象

此工具适用于拥有多个 GPU 或主显卡 VRAM 有限,且想要运行较大型模型(如 FLUX、WanVideo 或 GGUF 量化模型)而不遇到内存不足错误的 ComfyUI 用户。

亮点

  • 通用支持:适用于 .safetensors 和 GGUF 量化模型。
  • 丰富的节点库:自动创建标准 ComfyUI 加载器的 MultiGPU 版本,并与 WanVideoWrapper 和 Florence2 等第三方扩展集成。
  • 灵活卸载:可将整个模型卸载到系统 RAM,同时仍在 GPU 上执行计算。
  • 详细文档:内置超过 70 个节点的帮助。

相关

  • 项目
  • 项目
  • 项目
  • 项目