AI绘画 Stable Diffusion 报错 CUDA报错

在使用Stable diffusion软件的时候 软件运行一会就会报错 报错内容是这样的

img


win10 专业版 刚配的台式机 配置如下

img


老是这样报错 非常影响我使用软件工作 我用的Stable diffusion整合包是秋叶的整合包 显卡驱动都是最新的 谁帮我解决一下 万分感谢
希望你可以帮我远程解决问题

你看看你驱动控制面板里面cuda和你下载的cuda版本是不是一样的

  1. 如果换成CPU是什么结果,除了速度慢的话,能否正确运行。如果CPU无法正确运行的话,报错是什么?
  2. 请说明一下你的环境,包括torch,torchvision,cuda,cudnn各自版本多少。
    这里的cuda版本并不是nvidia-smi显示的版本,你用这个命令显示的版本是指你目前的显卡驱动最高支持的cuda版本,
    你如果是默认安装位置的话,可以进入到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA这个路径下面查看

    img

如果不是默认位置的话,可以找一下,或者输入nvcc -V 查看下输出是什么。你的cuda的确是12.x的,那么比较建议你换成cuda11.8的版本,然后cudnn一起换。目前pytorch2.x也只官方支持到11.8的版本

img

4.在运行的文件最上面加入一下代码重新运行,看下输出的报错信息是什么。

import os
os.environ['CUDA_LAUNCH_BLOCKING'] = "1"
os.environ['TORCH_USE_CUDA_DSA'] = "1"
os.environ['KMP_DUPLICATE_LIB_OK'] = 'True'

您好,Stable Diffusion 是一个基于 PyTorch 的深度学习模型,它需要在支持 CUDA 的 GPU 上运行。如果您遇到了 CUDA 相关的报错,可能是您的 GPU 驱动版本与 CUDA 版本不兼容,或者您的 PyTorch 版本与 CUDA 版本不匹配。

为了解决这个问题,您可以尝试以下几步:

  1. 确认您的 GPU 驱动版本与 CUDA 版本是否兼容。您可以在 NVIDIA 官网上查看 CUDA 兼容性矩阵,以确定您的驱动版本和 CUDA 版本是否匹配。

  2. 确认您的 PyTorch 版本是否与 CUDA 版本匹配。您可以在 PyTorch 官网上查看支持的 CUDA 版本,并安装相应版本的 PyTorch。

  3. 确认您的 CUDA 环境是否正确配置。如果您安装了多个版本的 CUDA,需要确保您的环境变量和 PATH 值设置正确,以保证程序能够使用正确的 CUDA 版本。

如果您还无法解决问题,可以提供更详细的报错信息,以便更好地定位问题。

这个报错信息显示了一个CUDA错误,指的是在使用PyTorch和Nvidia的显卡(GPU)进行计算时遇到的问题。"RuntimeError: CUDA error: unknown error" 表明程序在试图使用GPU时遇到了一个未知的错误。

下面是一些可能的解决方法:

  1. 更新显卡驱动和CUDA: 确保你的Nvidia显卡驱动和CUDA都是最新版本。在某些情况下,旧的显卡驱动或CUDA版本可能与PyTorch不兼容,导致此类错误。
  2. 设置环境变量: 在运行程序前,你可以尝试设置环境变量CUDA_LAUNCH_BLOCKING=1,这将使CUDA运行在同步模式,这样如果有错误发生,将会直接显示在引发错误的那一行代码,这有助于更好地理解和解决问题。
    在Linux或Mac系统,你可以在命令行运行:

bash

export CUDA_LAUNCH_BLOCKING=1

在Windows系统,你可以在命令行运行:

cmd

set CUDA_LAUNCH_BLOCKING=1

然后再运行你的程序。
3. 检查GPU使用率: 如果你的GPU内存已满,可能也会导致此类错误。你可以使用Nvidia的nvidia-smi命令来检查你的GPU使用情况。如果GPU内存已满,你需要找出占用GPU内存的程序并关闭它们,或者修改你的代码以减少GPU内存使用。
4. 尝试在CPU上运行程序: 如果你的程序可以在CPU上运行,你可以尝试把代码中的.cuda()或.to(device)(其中device是一个指向GPU的设备对象)替换为.cpu(),来看看是不是GPU具体的问题。这也可以帮助你确定问题是否与GPU有关。
5. 检查硬件问题: 在极少数情况下,这种错误可能是由于GPU硬件问题导致的。如果可能的话,你可以尝试在另一台装有Nvidia GPU的电脑上运行你的程序,看看问题是否仍然存在。

这个错误可能是由于CUDA出现了未知的错误所致,可能是由于GPU驱动程序或CUDA版本不兼容导致的。以下是一些可能的解决方案:

更新GPU驱动程序:可以尝试更新GPU驱动程序,确保其与CUDA版本兼容。

更新CUDA版本:可以尝试更新CUDA版本,确保其与GPU驱动程序兼容。

设置CUDA_LAUNCH_BLOCKING=1:可以尝试将CUDA_LAUNCH_BLOCKING环境变量设置为1,以便在CUDA出现错误时阻塞程序并打印调试信息。

启用CUDA DSA:可以尝试使用"TORCH_USE_CUDA_DSA"编译选项启用CUDA DSA,以便在设备端启用断言和调试功能。

stable-diffusion出错图或报错的解决方案
可以借鉴下
https://post.smzdm.com/p/axz3lml3/

按照sd项目安装一遍同版本的试试不行的话,应该是硬件问题

这个问题可能是由于CUDA驱动程序版本不兼容或者GPU显存不足导致的。以下是一些可能的解决方案:

  1. 检查CUDA驱动程序版本是否与AI绘画Stable Diffusion要求的版本匹配。如果不匹配,请升级或降级您的CUDA驱动程序。

  2. 检查您的GPU显存是否足够支持AI绘画Stable Diffusion运行。如果显存不足,请尝试减小输入图像的分辨率或者缩小模型输入尺寸。

  3. 如果以上两种方法都无法解决问题,您可以尝试使用CPU模式来运行AI绘画Stable Diffusion。在启动应用程序时,通过命令行参数设置--device cpu。

希望这些方法能够帮助您解决问题。

你的显卡正常吗,其他模型可以正常运行吗,这黑屏就是显卡问题,秋叶整合包里有打包好的环境,你就不用删除自己的cuda

更新显卡驱动:官网下载地址

为什么不用秋叶的整合包呢

以下答案由GPT-4.5Plus大模型(语音)与博主A努力中.......共同编写:

根据报错信息,这是一个CUDA相关的错误。可能的原因有:

  1. CUDA版本和Pytorch版本不匹配。Stable Diffusion需要CUDA 10.1+和相应版本的Pytorch,版本不匹配会导致CUDA错误。你可以检查CUDA和Pytorch版本,并更新至匹配版本。
  2. GPU显存不足。Stable Diffusion在绘画过程中需要较高的GPU显存,低显存容易导致CUDA错误。你可以检查显卡型号和显存大小,减小batch size或图片分辨率以减少显存占用。
  3. CUDA运行环境配置错误。CUDA的正常工作依赖于环境变量如CUDA_HOME等的正确设置。你可以参考NVIDIA官方文档检查这些环境变量设置。
  4. 显卡驱动问题。最新驱动不一定最稳定,有可能会导致CUDA错误。你可以尝试降级显卡驱动,如降级至1-2个版本之前的驱动。
  5. 其他原因。也有可能是GPU硬件问题或软件bug导致的,这需要排查和修复。

针对此问题,我的建议如下:

  1. 检查CUDA,Pytorch和显卡驱动版本,更新至匹配和稳定版本。
  2. 减小batch size和图片分辨率以降低显存占用。
  3. 检查CUDA环境变量设置,确保配置正确。
  4. 降级显卡驱动至更稳定版本。
  5. 尝试关闭其他占用GPU资源的程序,释放更多显存。
  6. 如果问题持续存在,可能需要进一步排查GPU硬件或软件bug。

检查一下驱动是否正常