pytorch框架训练模型GPU加速:手把手教程

pytorch框架训练模型GPU加速:手把手教程

前言:
训练如果使用cpu太慢了。屏幕前的你,是否烦恼于CUDA、cuDNN、Pytorch版本不一致的问题?是否烦恼于虚拟环境配置Pytorch和CUDA的问题?
OK,just follow me.
1: 你先确定好你要搞的代码使用的是什么版本的python环境、pytorch版本【一般readme.md or requirements文件中都会有介绍】
2: 检查电脑的CUDA驱动【允许你安装什么版本】
3: 把你需要的torch版本+你的CUDA版本进行对应确定
4: 安装CUDA【配置path(图形界面安装的一般会自动配置)】
5: 安装cuDNN【注意安装CUDA对应的版本】
6: 创建你要搞的代码的虚拟环境【conda】
7: 在虚拟环境中安装torch(比如CUDA12.1:https://download.pytorch.org/whl/cu121
8: 在训练代码中添加device=0调用GPU

1:拿到代码,确定环境:比如YOLOv12
在这里插入图片描述
2:检查CUDA驱动【一般向下兼容】
在这里插入图片描述
3:对应版本
https://pytorch.org/
在这里插入图片描述
https://developer.nvidia.com/cuda-toolkit-archive
在这里插入图片描述
安装CUDA很简单,下一步下一步(略过)
安完之后:nvcc --version
在这里插入图片描述
然后安装cuDNN:https://developer.nvidia.com/cudnn-archive

然后conda创建虚拟环境,激活虚拟环境
pip安装torch:https://download.pytorch.org/whl/cu121
会有点慢,不如直接这个网站下载,然后再pip本地安装:
在这里插入图片描述
在这里插入图片描述
安完之后,我一运行,提示我需要torchvision包,那就再安装:(修正:不要直接pip install torchvision,改为和torch统一版本,在网站上下载本地安装)
在这里插入图片描述
安了之后,小心它把你的可GPU加速的torch给卸了,偷偷安了个CPU加速的torch,这时候,再执行上面的安装你下载好的本地的torch即可。
最后:

import torch

# 检查 CUDA 是否可用
print(f"CUDA available: {torch.cuda.is_available()}")

print(torch.__version__)

print(f"CUDA version: {torch.version.cuda}")

# 检查 cuDNN 是否可用
if torch.backends.cudnn.is_available():
    print("cuDNN is available.")
    print(f"cuDNN version: {torch.backends.cudnn.version()}")
else:
    print("cuDNN is not available.")

# 尝试在 GPU 上创建一个张量
if torch.cuda.is_available():
    device = torch.device("cuda")
    x = torch.tensor([1.0], device=device)
    print(f"Tensor on GPU: {x}")

输出:
在这里插入图片描述
OK了,接下来你就随便玩弄GPU吧【加上device=0即可】:

from ultralytics import YOLO
import torch

def main():
    model = YOLO(r'ultralytics\cfg\models\12\yolo12-obb.yaml').load(
        r'model\yolo11n-obb.pt')  # build from YAML and transfer weights
    model.train(data=r'ultralytics\cfg\datasets\DOTAv1.5.yaml', epochs=100, imgsz=640, batch=4, workers=0, device=0)


if __name__ == '__main__':
    # print(torch.cuda.is_available())  # 如果cuda可用,则返回True
    main()

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值