问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

配置并验证CUDA和PyTorch联动使用

创作时间:
作者:
@小白创作中心

配置并验证CUDA和PyTorch联动使用

引用
CSDN
1.
https://m.blog.csdn.net/weixin_44259499/article/details/139610894

之前配置 codeformer 环境,但是一直在CPU 上跑的,昨晚终于调通了从GPU上跑,特此总结一下。

创建/进入虚拟环境

在文件目录下直接输入 cmd

创建虚拟环境

python -m venv venv

进入虚拟环境
第二次进入,就在该目录下直接输入以下命令就行

.\venv\Scripts\activate

退出虚拟环境

deactivate

1、查看CUDA 版本

首先确认您安装了兼容的 PyTorch 和 CUDA 版本。一般来说,PyTorch 版本需要匹配您显卡支持的 CUDA 版本。

可以使用以下命令查看当前的 PyTorch 和 CUDA 版本:

python -c "import torch; print(torch.version.cuda)"

1.1 如果返回None,则意味着您的 PyTorch 安装未配置为使用 CUDA,继续往下看

1.2 查看CUDA 版本,使用下面这个命令查看的可能不准确,这里显示的是12.2

nvidia-smi

1.3 查看CUDA 版本,以下面这个命令打印的版本为主,这里显示的是12.0

nvcc --version

2、查找与特定 CUDA 版本兼容的 PyTorch 版本,

可以访问 PyTorch 官网并使用其提供的安装指南。以下是具体步骤和网址:

访问 PyTorch 官网:

打开浏览器,访问PyTorch 官网.

选择配置:

在 PyTorch 官网首页,找到并点击 “Get Started” 按钮。你将会被带到一个安装配置页面。

在安装配置页面,你可以选择以下选项:

  • PyTorch Build:选择稳定版本(Stable)或夜间版本(Nightly)。
  • Your OS:选择你的操作系统(如 Linux、MacOS、Windows)。
  • Package:选择你要使用的包管理工具(如 Pip、Conda)。
  • Language:选择你要使用的编程语言(如 Python)。
  • Compute Platform:选择你要使用的 CUDA 版本(如 CUDA 11.3)。

生成安装命令:

根据你的选择,页面会生成相应的安装命令。

最后拷贝如下这行代码到命令行运行即可安装

pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

3、验证 PyTorch 是否正确配置了 CUDA

进入python,运行以下脚本

import torch
print("PyTorch version:", torch.__version__)
print("CUDA version:", torch.version.cuda)
print("Is CUDA available:", torch.cuda.is_available())
print("Device count:", torch.cuda.device_count())
print("Current device:", torch.cuda.current_device())
print("Device name:", torch.cuda.get_device_name(torch.cuda.current_device()))

4、实时每隔一秒查看GPU使用情况

方法一:

打开 PowerShell 窗口后,你可以输入命令并运行。例如,输入以下命令来每隔0.5秒实时查看GPU的使用情况:

while ($true) {
    nvidia-smi
    Start-Sleep -Milliseconds 500
}

这将启动一个无限循环,每隔0.5秒运行一次 nvidia-smi,从而实时查看 GPU 的使用情况。

方法二:

建立一个.bat文件,复制如下内容到文件中,然后双击运行

@echo off
:loop
nvidia-smi
timeout /t 1 /nobreak >nul
goto loop

解释

• @echo off:关闭命令回显,使脚本运行时不显示每个命令的执行内容。
• :loop:这是一个标签,用于标记循环的起始点。
• nvidia-smi:运行NVIDIA的GPU监控工具,显示GPU的使用情况。
• timeout /t 1 /nobreak >nul:等待1秒。参数 /t 1 表示等待1秒,参数 /nobreak 防止按键中断,>nul 抑制输出。
• goto loop:返回到 :loop 标签,重新开始循环。

如下截图显示GPU100%使用

5、使用一个简单的 PyTorch 脚本来测试 GPU 是否工作正常:

import torch
x = torch.rand(5, 3).cuda()
print(x)
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号