标签搜索

目 录CONTENT

文章目录

CUDA环境安装与后续升级

陈铭
2021-10-25 / 0 评论 / 1 点赞 / 327 阅读 / 1,015 字 / 正在检测是否收录...

初始安装

安装cuda

先查看自己显卡支持的cuda版本,目前最高支持cuda11.2
下载

英伟达官网下载,然后下一步下一步就行

测试cuda

打开cmd,能成功输出信息就算是成功了

nvcc -V

测试pytorch

执行脚本,能成功输出信息就算是成功了

import torch

if __name__ == '__main__':
    print(torch.__version__)
    print(torch.cuda_version)
    print(torch.cuda.is_available())

pip安装pytorch

可以去pytorch官网复制pip安装的命令

# 后面加了个国内源,下的快
pip3 install torch==1.9.0+cu111 torchvision==0.10.0+cu111 torchaudio===0.9.0 -f https://download.pytorch.org/whl/torch_stable.html -i https://pypi.douban.com/simple/

安装cudnn

cudnn是cuda的加速库,只安装cuda是没有cudnn的,去英伟达官网下载,解压后复制到cuda的安装目录就行

官方文档:
https://docs.nvidia.com/deeplearning/cudnn/latest/installation/windows.html

后续升级

升级显卡驱动

用Geforce查看当前显卡是否有最新驱动,升级驱动一般可以让显卡支持的最大cuda版本提升
image

查看Cuda版本支持

升级驱动后,已经支持到了12.4
image-1711954346129

安装新版本cuda

这里选择cuda11.8进行安装,主要是pytorch和paddle同时支持的最高版本就是11.8
过往所有版本cuda下载地址:
https://developer.nvidia.com/cuda-toolkit-archive
下载完,下一步下一步安装就行。此处我选择自定义安装,避免重复安装显卡驱动等额外东西
检查环境变量
安装后重新检查环境变量的 path 变量中确认下面 3 项均存在,如果缺少则添加。

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vXXX\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vXXX\libnvvp
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vXXX\extras\CUPTI\lib64

不关机刷新环境变量

taskkill /f /im explorer.exe; explorer.exe

安装新版本pytorch

我本机一直用的是py39,所以安装前可以看下py39有没有这个版本的制品。直接访问:https://download.pytorch.org/whl/torch/
image-1711955194302

# 首先删除干净旧版本torch的一些库
pip uninstall torch -y
pip uninstall torchvision -y
pip uninstall torchaudio -y

# 安装新版本
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

安装Cudnn

打开官网:https://developer.nvidia.com/cudnn-downloads
image-1711957367586
下载完解压的文件直接放到cuda的安装目录下,里面的三个文件夹,CUDA安装目录也有,复制粘贴进去
image-1711957483195

安装Paddle

目前最新版本Paddle为2.6,可以支持cuda11.8。不过为了避免依赖冲突,我这边paddle安装在了anaconda的环境中。torch用的最多,安装在了裸机上

python -m pip install paddlepaddle-gpu==2.6.1 -i https://pypi.tuna.tsinghua.edu.cn/simple

验证

查看当前cuda版本是不是11.8

nvcc -V

查看当前torch能不能使用cuda

import torch

if __name__ == '__main__':

    print(torch.__version__)
    print(torch.cuda_version)

    # 检查CUDA是否可用
    cuda_available = torch.cuda.is_available()

    if cuda_available:
        # 获取GPU设备数量
        num_gpu = torch.cuda.device_count()

        # 获取当前使用的GPU索引
        current_gpu_index = torch.cuda.current_device()

        # 获取当前GPU的名称
        current_gpu_name = torch.cuda.get_device_name(current_gpu_index)

        # 获取GPU显存的总量和已使用量
        total_memory = torch.cuda.get_device_properties(current_gpu_index).total_memory / (1024 ** 3)  # 显存总量(GB)
        used_memory = torch.cuda.memory_allocated(current_gpu_index) / (1024 ** 3)  # 已使用显存(GB)
        free_memory = total_memory - used_memory  # 剩余显存(GB)

        print(f"CUDA可用,共有 {num_gpu} 个GPU设备可用。")
        print(f"当前使用的GPU设备索引:{current_gpu_index}")
        print(f"当前使用的GPU设备名称:{current_gpu_name}")
        print(f"GPU显存总量:{total_memory:.2f} GB")
        print(f"已使用的GPU显存:{used_memory:.2f} GB")
        print(f"剩余GPU显存:{free_memory:.2f} GB")
    else:
        print("CUDA不可用。")

    # 检查PyTorch版本
    print(f"PyTorch版本:{torch.__version__}")

查看当前paddle能不能使用cuda

import paddle
paddle.device.is_compiled_with_cuda()
1

评论区