当前位置: 首页 > news >正文

在GPU上运行PyTorch

文章目录

  • 1、查看GPU的CUDA版本
  • 2、下载CUDA版本
  • 3、安装cuDNN
  • 4、配置CUDA环境变量
  • 5、安装配置Anaconda
  • 6、使用Anaconda
  • 7、pycharm导入虚拟环境
  • 8、安装带GPU的PyTorch⭐
  • 9、总结

🍃作者介绍:双非本科大三网络工程专业在读,阿里云专家博主,专注于Java领域学习,擅长web应用开发、数据结构和算法,初步涉猎人工智能和前端开发。
🦅个人主页:@逐梦苍穹
📕所属专栏:人工智能
🌻gitee地址:xzl的人工智能代码仓库
✈ 您的一键三连,是我创作的最大动力🌹

1、查看GPU的CUDA版本

桌面右键->NVIDIA控制面板->帮助->系统信息->组件:
image.png
image.png
可以看到我这里的CUDA版本是11.8(这里也推荐是11.8,后续会再提到)

2、下载CUDA版本

英伟达官网:https://developer.nvidia.com/cuda-toolkit-archive

到英伟达官网下载对应的CUDA版本,我下载的版本是CUDA11.8.0:
image.png
安装CUDA:双击执行下载的exe文件,会先解压文件到临时目录(不是安装目录),保持默认即可
20200427135351427.png
5. 安装过程:选择自定义
20200427140055597.png
 取消勾选 Visual Studio Integration
20200427140309411.png
 建议默认安装在C盘 。
20200427143306136.png

3、安装cuDNN

英伟达官网:https://developer.nvidia.com/cudnn

到英伟达官网下载与CUDA对应的cuDNN
image.png
下载解压缩之后,将CUDNN文件夹里面的bin、include、lib文件夹里面的文件,直接复制到CUDA的对应的安装目录下 !

4、配置CUDA环境变量

在path中添加如下路径:

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\libnvvp

image.png
在终端输入nvcc -V:
image.png

5、安装配置Anaconda

清华镜像站:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=D

image.png
下载完成之后,正常下一步即可。这里写几个需要注意的点:
①这里可以先不用选Add sys path,只勾选Register。环境变量自己配置。
20210703175041944.png
最后两项都不需要选,点击Finish:
20210703175555398.png
可以看到安装后,除了Anaconda,默认还带了Jupyter、Spyder等:
image.png
image.png
配置环境变量:
image.png
如果你是默认安装的,那你的配置路径就是:
20210703180523269.png
检查是否配置成功:
image.png
在cmd配置国内镜像源:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/

6、使用Anaconda

打开Anaconda Navigator:
image.png
启动完成:
image.png
这里是管理环境的:
image.png
conda常用命令:
https://docs.conda.io/projects/conda/en/latest/commands/index.html

7、pycharm导入虚拟环境

image.png

8、安装带GPU的PyTorch⭐

在cmd中(记得用管理员身份打开cmd):

  1. conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
  2. conda install pytorch torchvision torchaudio cudatoolkit=11.8 -c pytorch

测试安装是否成功以及能否正常使用GPU:

print("PyTorch版本: ", torch.__version__)  # 打印PyTorch版本
print("torchvision版本 ", torchvision.__version__)  # 打印torchvision版本
print("CUDA是否可用: ", torch.cuda.is_available())  # 检查CUDA是否可用

image.png
检查自己电脑的CUDA设备:

# -*- coding: utf-8 -*-
# @Author: CSDN@逐梦苍穹
# @Time: 2024/7/16 7:51
import torchif torch.cuda.is_available():num_cuda_devices = torch.cuda.device_count()print(f"Number of CUDA devices: {num_cuda_devices}")for i in range(num_cuda_devices):print(f"CUDA Device {i}: {torch.cuda.get_device_name(i)}")
else:print("No CUDA devices available.")

image.png

9、总结

此次问题折腾了很久,其中的关键就是,电脑的CUDA版本和pytorch-cuda、cudatoolkit的版本必须一致!

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • MVC之 IHttpModule管道模型《二》
  • C++的关键字const
  • 飞睿智能UWB Tag蓝牙防丢器标签,宠物安全新升级,5cm精准定位测距不迷路
  • 杭州汽修元宇宙
  • 芋道项目发版后报错: jt is not a function...
  • VBA学习(20):一批简单的Excel VBA编程问题解答
  • 持续集成06--Jenkins构建触发器
  • 集线器、交换机、路由器的区别,冲突域、广播域
  • 【RabbitMQ】一文详解消息可靠性
  • 基于springboot和mybatis的RealWorld后端项目实战三之添加swagger
  • HarmonyOS NEXT学习——@BuilderParam装饰器
  • golang mux组件兼容转移url
  • 【Linux】安装PHP扩展-redis
  • 【B树、B-树、B+、B*树】
  • 框架设计MVC
  • 【node学习】协程
  • Android路由框架AnnoRouter:使用Java接口来定义路由跳转
  • Angular6错误 Service: No provider for Renderer2
  • iOS编译提示和导航提示
  • Koa2 之文件上传下载
  • leetcode98. Validate Binary Search Tree
  • Linux中的硬链接与软链接
  • magento 货币换算
  • MYSQL 的 IF 函数
  • ng6--错误信息小结(持续更新)
  • Promise面试题2实现异步串行执行
  • vue-cli3搭建项目
  • vue脚手架vue-cli
  • Webpack4 学习笔记 - 01:webpack的安装和简单配置
  • 官方新出的 Kotlin 扩展库 KTX,到底帮你干了什么?
  • 解析带emoji和链接的聊天系统消息
  • 由插件封装引出的一丢丢思考
  • 原创:新手布局福音!微信小程序使用flex的一些基础样式属性(一)
  • JavaScript 新语法详解:Class 的私有属性与私有方法 ...
  • #进阶:轻量级ORM框架Dapper的使用教程与原理详解
  • (react踩过的坑)antd 如何同时获取一个select 的value和 label值
  • (八)光盘的挂载与解挂、挂载CentOS镜像、rpm安装软件详细学习笔记
  • (苍穹外卖)day03菜品管理
  • (附源码)springboot家庭财务分析系统 毕业设计641323
  • (附源码)springboot码头作业管理系统 毕业设计 341654
  • (九)信息融合方式简介
  • (十八)Flink CEP 详解
  • (转)visual stdio 书签功能介绍
  • *** 2003
  • .NET CORE Aws S3 使用
  • .NET 读取 JSON格式的数据
  • .NET/C# 如何获取当前进程的 CPU 和内存占用?如何获取全局 CPU 和内存占用?
  • .net和php怎么连接,php和apache之间如何连接
  • .Net小白的大学四年,内含面经
  • @data注解_SpringBoot 使用WebSocket打造在线聊天室(基于注解)
  • @vue-office/excel 解决移动端预览excel文件触发软键盘
  • [20181219]script使用小技巧.txt
  • [BZOJ2208][Jsoi2010]连通数
  • [C# 基础知识系列]专题十六:Linq介绍
  • [C++][STL源码剖析] 详解AVL树的实现