【ComfyUI】RuntimeError: CUDA error: operation not supported

6 篇文章 0 订阅

前言

最近好不容易,安装好ComfyUI后,启动也OK,点击生成图片时,报错了

got prompt
model_type EPS
adm 0
making attention of type 'vanilla-pytorch' with 512 in_channels
Working with z of shape (1, 4, 32, 32) = 4096 dimensions.
making attention of type 'vanilla-pytorch' with 512 in_channels
missing {'cond_stage_model.text_projection', 'cond_stage_model.logit_scale'}
left over keys: dict_keys(['cond_stage_model.transformer.text_model.embeddings.position_ids', 'model_ema.decay', 'model_ema.num_updates'])
loading new
loading new
loading in lowvram mode 1842.6899042129517
!!! Exception during processing !!!
Traceback (most recent call last):
  File "E:\openai\project\ComfyUI\execution.py", line 152, in recursive_execute
    output_data, output_ui = get_output_data(obj, input_data_all)
                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "E:\openai\project\ComfyUI\execution.py", line 82, in get_output_data
    return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "E:\openai\project\ComfyUI\execution.py", line 75, in map_node_over_list
    results.append(getattr(obj, func)(**slice_dict(input_data_all, i)))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "E:\openai\project\ComfyUI\nodes.py", line 1236, in sample
    return common_ksampler(model, seed, steps, cfg, sampler_name, scheduler, positive, negative, latent_image, denoise=denoise)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "E:\openai\project\ComfyUI\nodes.py", line 1206, in common_ksampler
    samples = comfy.sample.sample(model, noise, steps, cfg, sampler_name, scheduler, positive, negative, latent_image,
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "E:\openai\project\ComfyUI\comfy\sample.py", line 81, in sample
    comfy.model_management.load_models_gpu([model] + models, comfy.model_management.batch_area_memory(noise.shape[0] * noise.shape[2] * noise.shape[3]) + inference_memory)
  File "E:\openai\project\ComfyUI\comfy\model_management.py", line 394, in load_models_gpu
    cur_loaded_model = loaded_model.model_load(lowvram_model_memory)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "E:\openai\project\ComfyUI\comfy\model_management.py", line 288, in model_load
    accelerate.dispatch_model(self.real_model, device_map=device_map, main_device=self.device)
  File "D:\Program Files\Python\Lib\site-packages\accelerate\big_modeling.py", line 391, in dispatch_model
    attach_align_device_hook_on_blocks(
  File "D:\Program Files\Python\Lib\site-packages\accelerate\hooks.py", line 532, in attach_align_device_hook_on_blocks
    add_hook_to_module(module, hook)
  File "D:\Program Files\Python\Lib\site-packages\accelerate\hooks.py", line 155, in add_hook_to_module
    module = hook.init_hook(module)
             ^^^^^^^^^^^^^^^^^^^^^^
  File "D:\Program Files\Python\Lib\site-packages\accelerate\hooks.py", line 253, in init_hook
    set_module_tensor_to_device(module, name, self.execution_device)
  File "D:\Program Files\Python\Lib\site-packages\accelerate\utils\modeling.py", line 307, in set_module_tensor_to_device
    new_value = old_value.to(device)
                ^^^^^^^^^^^^^^^^^^^^
RuntimeError: CUDA error: operation not supported
CUDA kernel errors might be asynchronously reported at some other API call, so the stacktrace below might be incorrect.
For debugging consider passing CUDA_LAUNCH_BLOCKING=1.
Compile with `TORCH_USE_CUDA_DSA` to enable device-side assertions.

这个问题查了挺久的资料的,特意记录下解决方案。

解决办法

官方提供了两种解决策略。

方式一:黑名单策略

在这里插入图片描述

在这里插入图片描述

加完后,再重启。发现还是不行。

方式二:启动时添加–disable-cuda-malloc

# 注意--disable-cuda-malloc
E:\openai\project\ComfyUI>python main.py --disable-cuda-malloc

最后,通过方式二,得以解决。


其实,在启动的时候,它已经告诉我们可能会遇到的问题;

在这里插入图片描述

有两段提示:

  1. 第一段提示:
Trying to enable lowvram mode because your GPU seems to have 4GB or less. If you don't want this use: --normalvram
Set vram state to: LOW_VRAM

说,由于我的GPU<=4G,所以它尝试开启了lowvram模式。如果我想使用正常模式,就在启动命令行后面添加--normalvram

  1. 第二段提示:
WARNING: this card most likely does not support cuda-malloc, if you get "CUDA error" please run ComfyUI with: --disable-cuda-malloc

就是,发现我的GPU卡,并不支持cuda-malloc函数或接口。如果在后续的运行中遇到了CUDA error错误,那么就在启动命令行后面,添加:--disable-cuda-malloc


参考地址:

CUDA error: operation not supported, in KSampler

https://github.com/comfyanonymous/ComfyUI/issues/940#issuecomment-1691327437

https://github.com/comfyanonymous/ComfyUI/issues/940#issuecomment-1642586085

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
当出现"RuntimeError: CUDA error: initialization error"的错误时,通常是由于CUDA的初始化过程中出现了问题。这可能是由于以下几个原因导致的: 1. GPU驱动程序问题:请确保你的GPU驱动程序已经正确安装并与CUDA版本匹配。如果你的驱动程序过旧或与CUDA不兼容,可能会导致初始化错误。 2. CUDA版本不匹配:请确保你的CUDA版本与你的深度学习框架(如PyTorch或TensorFlow)所需的CUDA版本相匹配。如果版本不匹配,可能会导致初始化错误。 3. 硬件问题:有时候,初始化错误可能与硬件本身有关。请确保你的GPU正确安装并正常工作。 对于解决这个问题,可以尝试以下方法: 1. 更新GPU驱动程序:前往GPU制造商的官方网站,下载并安装最新的GPU驱动程序。 2. 检查CUDA版本:确保你的CUDA版本与深度学习框架所需的版本相匹配。如果不匹配,可以尝试升级或降级CUDA版本。 3. 检查硬件连接:确保你的GPU正确安装并与计算机连接良好。可以尝试重新插拔GPU,确保连接稳定。 4. 检查系统环境变量:确保你的系统环境变量中包含正确的CUDA路径。需要将CUDA的路径添加到PATH环境变量中。 如果以上方法都没有解决问题,那可能是其他更复杂的问题导致的初始化错误。建议咨询深度学习框架的官方论坛或寻求专业人士的帮助来进一步调试和解决问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [【Pytorch】RuntimeError: CUDA error: initialization error](https://blog.csdn.net/LittleSeedling/article/details/127995183)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [关于RuntimeError: Cannot re-initialize CUDA in forked subprocess和CUDA error: initialization error的...](https://blog.csdn.net/Davidietop/article/details/127072346)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

山鬼谣me

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值