首页 > 其他分享 >使用 Stable Diffusion 本地版时遇到显卡驱动过旧的问题

使用 Stable Diffusion 本地版时遇到显卡驱动过旧的问题

时间:2023-10-03 18:37:03浏览次数:41  
标签:Diffusion torch 版时 过旧 PyTorch CUDA 版本 GPU cuda

我本地安装了一个 Stable Diffusion,使用它生成图片时,遇到了如下错误消息:

BC:\WINDOWS\syst
venv "C:\app\stable-diffusion-webui-master\venv\Scripts\Python.exe"
Python 3.10.8 (tags/v3.10.8:aaaf517, Oct 11 2022, 16:50:30) [MSc v.1933 64 bit (AMD64)]Commit hash:
Traceback (most recent call last):
File "C:\app\stable-diffusion-webui-master\launch.py", line 355, in prepare_environment()
File "C:\app\stable-diffusion-webui-master\launch.py", line 260, in prepare_environmentl
run_pythonC"import torch; assert torch.cuda.is_available(), 'Torch is not able to use GPU; add --skip-torch-cuda-test to COMMANDLINE_ARGS variable to disable this check'"
File "C:\app\stable-diffusion-webui-master\launch.py", line 121, in run_pythonreturn run(f'"{python}" -c "{code}"', desc, errdesc)
File "C:\app\stable-diffusion-webui-master\launch.py", line 97, in run
raise RuntimeError(message)
RuntimeError: Error running command.
Command: "C:\app\stable-diffusion-webui-master\venv\Scripts\python.exe" -c "import torch; assert torch.cuda.is_available(), 'Torch is not able to use GPU; add --skip-torch-cuda-test to COMMANDLINE_ARGS variable to disable this check'"
Error code: 1

stderr: C:\app\stable-diffusion-webui-master\venv\lib\site-packages\torch\cuda_init_ py:88: UserWarning: CUDA initialization: The NVIDIA driver on your systen is too old (found version 10020). Please update your GPU driver by downloading and installing a new version from the URL: http://www.nvidia.com/Download/index.aspx Alternatively, go to:https://pytorch.org to install a PyTorch version that has been compiled with your version of the CUDA driver. (Triggered internally at ..\c10\cuda\CUDAFunctions.cpp:109.)
stdout:
return torch._c._cuda_getDeviceCount() > Θ
Traceback (most recent call last):
File "", line 1, in
AssertionError: Torch is not able to use GPU; add --skip-torch-cuda-test to CoMMANDLINE_ARGS variable to disable this checkl

Press any key to continue . . .

从官网下载最新的显卡驱动:

http://www.nvidia.com/Download/index.aspx

文件名如下:

我笔记本电脑的显卡是 NVIDIA Quadro RTX 4000

旧的驱动日期是 2020年5月11日:

驱动更新后,日期变成了 2023年9月12日

显卡驱动更新完毕后,错误消失:

关于这个错误的更多详细信息:

Stable Diffusion是一个用于生成高质量图像的深度学习模型,通常需要GPU来加速训练和推理。当出现Torch不能使用GPU的错误时,通常涉及到一些常见的问题和解决方案。在本文中,我将详细介绍可能导致这个问题的原因,并提供一些可能的解决方法。

错误消息:"Torch is not able to use GPU" 表明PyTorch(通常简称为Torch)无法使用GPU设备进行计算。这可能是由多种原因引起的,下面我会逐一讨论这些原因以及相应的解决方法。

  1. 没有安装GPU版本的PyTorch

    • 检查你的PyTorch是否是GPU版本。你可以通过运行以下代码来验证:

      import torch
      print(torch.cuda.is_available())
      
    • 如果结果为False,那么你可能安装了CPU版本的PyTorch。你需要卸载CPU版本,然后安装GPU版本。你可以使用以下命令来安装GPU版本的PyTorch(假设你使用pip):

      pip uninstall torch
      pip install torch -f https://download.pytorch.org/whl/cuXXX/torch_stable.html
      

      这里的cuXXX应替换为你的GPU驱动程序版本,例如cu111cu102等。你可以通过运行nvcc --version来确定你的GPU驱动版本。

  2. 没有正确安装GPU驱动程序

    • 确保你的GPU驱动程序已正确安装并且与你的CUDA版本兼容。通常,PyTorch需要与CUDA版本兼容的GPU驱动程序才能正常工作。

    • 检查CUDA的安装情况,确保与你的GPU驱动程序版本匹配。

  3. CUDA不可用或不正确安装

    • 确保CUDA(Compute Unified Device Architecture)已正确安装并设置。CUDA是用于GPU计算的重要组件,PyTorch依赖于它进行GPU加速。

    • 检查CUDA是否正确安装,可以通过查看NVIDIA官方网站或使用命令nvidia-smi来验证。

  4. 没有正确配置CUDA路径

    • 确保CUDA的路径正确配置。你需要将CUDA的安装路径添加到你的环境变量中。在Linux中,可以通过编辑.bashrc.zshrc文件来实现,添加如下内容:

      export PATH=/usr/local/cuda-X.Y/bin:$PATH
      export LD_LIBRARY_PATH=/usr/local/cuda-X.Y/lib64:$LD_LIBRARY_PATH
      

      其中,X.Y应该替换为你的CUDA版本号。

  5. 没有正确安装cuDNN

    • cuDNN(CUDA Deep Neural Network library)是用于深度学习模型的加速库,也是PyTorch的依赖项之一。确保cuDNN正确安装,并且与你的CUDA版本兼容。

    • 你可以在NVIDIA的官方网站上找到适用于你的CUDA版本的cuDNN版本,并按照它们的安装指南进行安装。

  6. GPU驱动程序或硬件问题

    • 如果以上步骤都已经检查并且没有解决问题,那么问题可能与GPU驱动程序或硬件本身有关。可能需要更新GPU驱动程序或者检查GPU是否正常工作。

    • 尝试在其他GPU上运行你的代码,以确定是否是硬件问题。

  7. 其他可能的问题

    • 检查你的系统资源是否足够,包括GPU内存是否足够,以及是否有其他进程正在占用GPU。

    • 确保你的PyTorch和相关库(例如Torchvision)是最新版本,以避免已知的问题。

    • 检查你的代码中是否有与GPU相关的错误配置,例如将张量放到CPU上而不是GPU等。

总结起来,当遇到"Torch is not able to use GPU"错误时,首先需要检查你的PyTorch是否是GPU版本,并确保正确安装了CUDA、cuDNN以及相关的GPU驱动程序。如果所有这些步骤都已经尝试过了,还是无法解决问题,那么可能需要深入调查硬件或其他系统相关的问题。

最后,要注意的是,不同的系统配置和环境可能会导致不同的错误,因此解决问题可能需要根据具体情况进行定制。希望这些解决方法能够帮助你诊断并解决Stable Diffusion在本地运行时的GPU错误问题。如果你能提供更多关于你的系统配置和错误消息的信息,那么我将能够提供更具体的帮助。

标签:Diffusion,torch,版时,过旧,PyTorch,CUDA,版本,GPU,cuda
From: https://www.cnblogs.com/sap-jerry/p/17741431.html

相关文章

  • Stable Diffusion 里 GFPGAN、ESRGAN 和 RealESRGAN 的功能介绍
    StableDiffusion是一个深度学习技术,主要用于图像生成和图像增强任务。它的核心思想是通过稳定的训练过程来生成高质量的图像,同时提供了一种用于生成和增强图像的框架。在StableDiffusion中,GFPGAN、ESRGAN和RealESRGAN都是与图像生成和增强相关的功能,它们各自有不同的应用......
  • Stable Diffusion 本地安装步骤
    StableDiffusion是一种开源机器学习模型,可以从文本生成图像,根据文本修改图像,或者在低分辨率或低细节图像上填充细节。StableDiffusion已经过数十亿张图像的训练,可以产生与从DALL-E2和MidJourney获得的结果相当的结果。它由StabilityAI开发,并于2022年8月22日首......
  • 什么是 Stable Diffusion 中的 Masking
    StableDiffusion是一种深度学习技术,主要用于生成式对抗网络(GANs)的训练。这一技术旨在提高生成图像和视频的质量和稳定性。StableDiffusion引入了一种称为"masking"的功能,用于改进训练的效果。在本文中,我将详细介绍StableDiffusion中masking的具体含义,并通过示例来说明......
  • Stable Diffusion扩散模型
    人像生成模型1.模型理论基础扩散模型(DiffusionModel):1.1DiffusionModel原理首先,DenoiseModel 需要一个起始的噪声图像作为输入。这个噪声图像可以是完全随机的,也可以是一些特定的模式(如 高斯分布)或者形状。-接下来,随着denoise的不断进行,图像的细节信息会逐渐浮现......
  • Stable Diffusion 的工作原理
    StableDiffusion是一种深度学习技术,主要用于生成式对抗网络(GANs)的训练。这一技术旨在提高生成图像和视频的质量和稳定性。StableDiffusion引入了一种称为"masking"的功能,用于改进训练的效果。在本文中,我将详细介绍StableDiffusion中masking的具体含义,并通过示例来说明......
  • stable-diffusion-webui Github 代码仓库的介绍
    stable-diffusion-webui:一个基于Web的稳定梯度流生成模型训练工具stable-diffusion-webui是一个位于GitHub上的开源代码仓库,地址为https://github.com/AUTOMATIC1111/stable-diffusion-webui。该仓库提供了一个基于Web的用户界面,旨在简化使用StableDiffusion这一生成模......
  • Stable Diffusion 的工作原理介绍
    StableDiffusion:一个强大的生成模型训练工具StableDiffusion是一个强大的生成模型训练工具,它在机器学习领域引起了广泛的关注和研究。该工具的核心思想是通过稳定的梯度流来训练生成模型,从而提高生成图像和数据的质量。本文将详细介绍StableDiffusion的背景、原理、应用......
  • Stable Diffusion基础:精准控制之ControlNet
    在AI绘画中精确控制图片的生成是一件比较困难的事情,炼丹师们经常需要大量抽卡才能得到一张满意的图片,不过随着ControlNet的诞生,这一问题得到了很大的缓解。ControlNet提供了十几种控制网络模型,有的可以控制画面的结构,有的可以控制人物的姿势,还有的可以控制图片的画风,这对于提......
  • Stable Diffusion基础:ControlNet之重新上色(黑白照片换新颜)
     本文给大家分享StableDiffusion的基础能力:ControlNet之重新上色。这是一个最近新上的ControlNet模型,它可以识别图像中的不同区域,并使用不同的颜色重新绘制它们。安装ControlNet安装工欲善其事必先利其器,ControlNet还是先要安装好的,已经安装好的请跳过这一步。......
  • [IJCAI 2023]Fighting against Organized Fraudsters Using Risk Diffusion-based Par
    [IJCAI2023]FightingagainstOrganizedFraudstersUsingRiskDiffusion-basedParallelGraphNeuralNetwork文章设计了一种基于社区的医疗保险欺诈行为检测。模型为了提高精度,模型设计了一组异构图模型和一组同构图模型。输入的异构图是保险受益人-医疗服务提供者的图,......