LogoWonderful Launcher
  • 首页
  • 定价
  • 文档
  • 下载
ComfyUI "Failed to Fetch":先判断是哪条连接失败热门 ComfyUI 自定义节点包:Easy Use、Layer Style、rgthree 与 VideoHelperSuiteComfyUI「clean library entry point is missing」修复方法ComfyUI ControlNetApplyAdvanced class_type 修复ComfyUI 多 GPU 使用指南:切换至 GPU 1、--cuda-device 参数及双实例方案定价与积分说明
参考

ComfyUI 多 GPU 使用指南:切换至 GPU 1、--cuda-device 参数及双实例方案

Partially verifiedLow riskTested on Windows 10, Windows 11 | portable | Python 3.11+ | CUDA 12.x | Torch 2.x | ComfyUI multi-GPU flag usage and multi-instance port patternLast verified 2026-06-29Estimated time 5-15 分钟

Windows 与 Linux 下的 ComfyUI 多 GPU 配置:使用 --cuda-device 选择 GPU 1、在不同端口运行双实例,并避免对工作流分割的错误假设。

如果你搜索的是 comfyui multi gpu、comfyui use gpu 1、comfyui --cuda-device 或 comfyui two gpus,简短的答案是:

  • 一个普通工作流通常只运行在一块选定的 GPU 上
  • 使用两块 GPU 的实用方式通常是在两个端口上各运行一个 ComfyUI 实例
  • --cuda-device 是"使用 GPU 1 而非 GPU 0"最安全的启动参数

大多数用户的最佳做法是将一个 ComfyUI 实例分配给一块 GPU、另一个实例分配给另一块,而不是期望一个 KSampler 自动在多张显卡之间拆分执行。

快速参考

目标最佳方案示例
使用 GPU 1 而非 GPU 0以 --cuda-device 1 启动 ComfyUIpython main.py --cuda-device 1
同时运行两个队列在不同端口启动两个 ComfyUI 实例--cuda-device 0 --port 8188,--cuda-device 1 --port 8189
保持所有 GPU 可见但优先使用某一块仅在明确知道原因时使用 --default-devicepython main.py --default-device 1
让一个 KSampler 跨 GPU 拆分执行默认情况下通常不支持使用明确支持该功能的模型或节点
缓解显存压力使用显存相关参数或更小的工作流--lowvram、降低分辨率、量化模型

搜索意图分类

搜索词变体最佳答案
comfyui use gpu 1在该 ComfyUI 进程的启动命令中添加 --cuda-device 1
comfyui --cuda-device用于对该进程隐藏其他所有 CUDA 设备,使选定显卡成为唯一可见的活动 GPU
comfyui run two instances在两个不同端口(如 8188 和 8189)各运行一个 ComfyUI 进程
comfyui default device仅在自定义场景需要保持其他设备可见时使用 --default-device
comfyui out of memory two gpus优先将其视为显存或工作流问题;大多数工作流不会自动将一个模型拆分到多张显卡上

ComfyUI 中"多 GPU"的含义

人们常将三个不同的概念混为一谈:

  1. 选择单块 GPU:ComfyUI 在指定设备上运行。
  2. 运行多个实例:两个浏览器会话、两个端口、两个队列、两块 GPU。
  3. 将一个工作流拆分到多块 GPU:单个模型或工作流同时使用多块 GPU。

前两种是可行的。第三种不是大多数标准 ComfyUI 工作流能自动实现的。

第一步:检查你的 GPU

在装有 NVIDIA GPU 的 Windows 或 Linux 上,运行:

nvidia-smi

查看左列中的 GPU 索引。第一张显卡通常是 0,第二张通常是 1。

然后确认 PyTorch 能识别 CUDA:

python -c "import torch; print(torch.cuda.device_count()); print(torch.cuda.get_device_name(0))"

如果 torch.cuda.device_count() 返回 0,你面对的还不是多 GPU 问题,而是 PyTorch/CUDA 安装问题。请先参阅 GPU 兼容性。

第二步:使用 --cuda-device 选择单块 GPU

手动安装方式:

python main.py --cuda-device 1

使用 Windows 便携版时,编辑或复制你的启动 .bat 文件,在 main.py 后添加该参数:

.\python_embeded\python.exe -s ComfyUI\main.py --windows-standalone-build --cuda-device 1

ComfyUI 官方参数说明指出,--cuda-device 用于设置该实例所使用的 CUDA 设备,并对该进程隐藏其他设备。

这意味着 ComfyUI 在选定进程内部仍可能打印 cuda:0。这是正常现象,因为所选 GPU 对该进程来说是唯一可见的设备。

第三步:在两块 GPU 上运行双实例

使用不同端口,避免两个服务器发生冲突。

实例 A:

python main.py --cuda-device 0 --port 8188

实例 B:

python main.py --cuda-device 1 --port 8189

然后分别打开:

http://127.0.0.1:8188
http://127.0.0.1:8189

这是生产环境中最可靠的多 GPU 模式:每块 GPU 对应一个独立队列。

正式并行工作时建议使用独立用户目录

如果两个实例每天都处于活跃状态,建议为它们配置不同的 --user-directory 路径,避免浏览器状态、工作流标签和用户设置相互干扰。

示例:

python main.py --cuda-device 0 --port 8188 --user-directory user-gpu0
python main.py --cuda-device 1 --port 8189 --user-directory user-gpu1

第四步:了解 --default-device

ComfyUI 还提供了 --default-device 选项,用于设置默认设备,同时保持其他设备可见。

这听起来很吸引人,但它并不等同于自动多 GPU 执行。仅在工作流、自定义节点或高级场景需要其他设备保持可见时才使用该选项。

对大多数用户而言,--cuda-device 更易于理解和使用。

第五步:不要用多 GPU 来掩盖显存问题

如果工作流因某块 GPU 显存不足而失败,添加第二块 GPU 通常不会让同一个模型神奇地跑起来。请先尝试以下方案:

  • 降低图像分辨率
  • 减小批处理大小
  • 关闭其他占用 GPU 的应用
  • 在合适时使用量化模型
  • 以 --lowvram 启动 ComfyUI
  • 使用更小的模型或工作流

请参阅 ComfyUI Python 内存不足 获取更深入的排查路径。

常见错误

错误做法为何失败更好的方案
在同一服务器上打开两个浏览器标签两个标签仍使用同一个 ComfyUI 进程在另一个端口启动第二个进程
在错误位置添加 --cuda-device 1该参数未传递给 main.py在启动命令中将其放在 main.py 之后
期望一个工作流自动跨两块 GPU 拆分标准节点通常只在一块选定设备上运行使用独立队列或专用节点
两个实例都使用 8188 端口一个端口只能被一个进程占用分别使用 8188 和 8189
安装了仅 CPU 版本的 PyTorchComfyUI 无法使用任何 NVIDIA GPU重新安装带 CUDA 支持的 PyTorch

如何验证配置

启动 ComfyUI 并查看启动日志,你应该在设备信息行附近看到你的 GPU 名称:

Device: cuda:0 NVIDIA GeForce ...

然后在生成过程中观察 nvidia-smi。如果你运行了两个实例,分别在每个实例中提交一个小型工作流,确认每块 GPU 都显示出活动状态。

如果只有一块 GPU 处于忙碌状态,请检查:

  • 浏览器正在使用哪个端口
  • 两个进程是否仍在运行
  • 每条启动命令是否使用了不同的 --cuda-device
  • 第二个进程是否因端口已被占用而启动失败

Wonderful Launcher 的帮助

当你希望维护多个稳定的 ComfyUI 环境而非依赖一个脆弱的单一目录时,Wonderful Launcher 是一个很好的选择:

  • 为普通图像生成保留干净的 GPU 0 环境
  • 为实验性功能或视频节点保留独立的 GPU 1 环境
  • 避免不同队列之间的自定义节点依赖冲突
  • 在修改启动参数前保留可正常运行的工作流

如果你还在选择硬件,请从 GPU 兼容性 开始了解。如果 ComfyUI 能启动但浏览器持续断开连接,请参阅 ComfyUI 重连错误。

相关指南

  • GPU 兼容性
  • ComfyUI Python 内存不足
  • ComfyUI 重连错误
  • ComfyUI 依赖冲突

参考资料

  • ComfyUI 命令行参数源码
  • ComfyUI 系统要求
  • PyTorch CUDA 说明文档

先按上面的步驟定位根因。还卡住时,可以下载 Wonderful Launcher 检查目前机器;启动器原生修复、任务日誌和執行階段检查会集中在一起。credits 只用於图片生成和按量工具。

下载 Wonderful Launcher查看 credits 方案

这篇文件解決了你的問题嗎?

你的回饋会帮助我们優先補強真實 ComfyUI 排障文件。

ComfyUI ControlNetApplyAdvanced class_type 修复

通过分离工作流 JSON、ComfyUI 版本、ControlNet 模型和自定义预处理器,修复 ComfyUI ControlNetApplyAdvanced class_type、node id has no class_type 以及 Apply ControlNet Advanced 缺失错误。

定价与积分说明

了解 Wonderful Launcher 积分涵盖的内容、哪些功能保持免费,以及如何选择套餐而不被隐性维修承诺误导。

目录

快速参考
搜索意图分类
ComfyUI 中"多 GPU"的含义
第一步:检查你的 GPU
第二步:使用 --cuda-device 选择单块 GPU
第三步:在两块 GPU 上运行双实例
第四步:了解 --default-device
第五步:不要用多 GPU 来掩盖显存问题
常见错误
如何验证配置
Wonderful Launcher 的帮助
相关指南
参考资料