从零开始搭建GPU深度学习环境(pytorch)

news2024/11/16 9:41:45

傻乎乎的我,突然发现我自己的笔记本电脑居然有gpu,这个电脑是我弟在2017年购入的。

电脑已经按照了cpu环境,现在增加gpu环境

参考torch的cpu版本和gpu版本有什么区别 torch与cuda版本_mob64ca13f6035c的技术博客_51CTO博客


前言:
配置环境:

Windows10 + Anaconda + python3.8.10+GPU:RTX2060 ,已安装好显卡驱动
本文安装的Torch和CUDA版本:

Cuda11.1.1+cuDNN8.05+torch1.8.1+torchvision0.10.0
建议:

先了解显卡的cuda版本和cudatoolkit的区别;文中的第一项
1 显卡驱动带的Cuda和自己装的Cuda有什么区别?
疑问: 安装好CUDA后,在cmd中输入nvidia-smi和nvcc -V显示的cuda版本不同?如图所示。

2 Cuda11+CudNN安装流程
总结以下下载地址:
1.Nvidia显卡驱动:  https://www.nvidia.cn/Download/index.aspx?lang=cn2.Cuda下载:

官网最新版本: https://developer.nvidia.com/cuda-downloads
官网往期版本:  https://developer.nvidia.com/cuda-toolkit-archive
3.cuDNN下载:  https://developer.nvidia.com/rdp/cudnn-archive4.pytorch和torchvision下载:

官网最新版本:  https://pytorch.org/get-started/locally/
往期版本下载:  https://download.pytorch.org/whl/torch_stable.html
3.1 前言:
若显卡已安装好Nvidia显卡驱动,请在cmd使用nvidia-smi查看显支持的cuda的最高版本,如图所示。

若还未安装显卡驱动(也不用担心),安装cuda时勾选显卡驱动可顺便将显卡驱动一起安装

作者的显卡驱动在 https://www.nvidia.cn/Download/index.aspx?lang=cn下载并安装完毕。

3.2 Cuda安装:
前言
在3.1中nvidia-smi查询到Cuda版本为11.3(Driver API),因此在下载Cuda为深度学习加速时,只要CUDA Toolkit 的版本<=11.3。

安装步骤
步骤1: 选择合适的cuda版本,并安装,本文选择的是 11.1,如图所示。

最新版本cuda: https://developer.nvidia.com/cuda-downloads(最新版本的cuda)

往期版本cuda:https://developer.nvidia.com/cuda-toolkit-archive (很多版本任君选择)

步骤2:(安装) 双击exe文件完成解压(解压路径最好不要改),进入安装后,选择自定义安装,如下图所示。

步骤3:自定义安装说明, 选好并点击安装。

情况1:若电脑已经安装好显卡驱动,只勾选Cuda。其它组件请对比版本号。若当前版本较新,则不安装其它选项,若版本较旧,建议勾选安装,如左图所示 。
情况2:若电脑未安装显卡驱动,建议都勾选,会顺便把显卡驱动装上,如右图所示
选完后,下一步----安装即可。
步骤4: cmd中,输入nvcc -V(注意V是大写),可查当前cuda版本,即安装成功,如下图所示。

TIPS:若nvcc -V没反应,则看是否cuda未加入环境变量

1.打开高级系统设置,在用户变量的Path中加入cuda的bin和lib路径,如

3.3 cuDNN安装步骤(cuDNN8.0.5)
cuDNN下载官网 https://developer.nvidia.com/rdp/cudnn-archive 官网已说明Cuda对应的cuDNN版本,相信官网,如图所示。本文选择cuDNN8.0.5

在官网下载cuDNN前需注册Nvidia会员,免费的。

具体步骤: 下载cuDNN,并将zip文件解压,将里面的文件全部复制到CUDA的安装目录中,如图所示。

此时cuDNN也配置完成了!

4 pytorch和torchvision的安装(gpu版本,python3.8+pytorch1.8.1+torchvision0.9.1)


方法一:根据官网指令进行安装(不推荐,容易失败,因为国情原因)
网站:https://pytorch.org/get-started/previous-versions/

说明:

命令行中cudatoolkit实际上就是第3点中的Cuda(Runtime API),若已根据第3点安装了Cuda,就不需要cudatoolkit了;
第3点中的cuda是系统级安装,命令行的conda install cudatoolkit是虚拟环境级的安装
用命令行安装一般都会失败,因为网络问题和安装包比较大,因此请看方法二,用whl安装。
方法二:使用whl安装。


安装步骤:
步骤1:选择合适的torch和torchvision版本

注意:根据你实际使用的python版本来选择,cp38为python3.8,cp36为python3.6,不要选错了。

打开这个网页

步骤二: 安装torch1.8.1

激活安装的虚拟环境->进入whl的文件夹->pip install +文件名 即可完成torch的安装。

步骤三: 安装torchvision(与步骤二类似)

激活安装的虚拟环境->进入whl的文件夹->输入以下命令即可安装完成

pip install --no-deps + 文件名
1.
说明: 不添加–no-deps会导致安装时自动将你的pytorch-gpu版本自动卸载,然后装上别的版本。(这真是神奇的操作,别踩坑了。)

最后:检查是否安装成功,显示true即安装成功

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2117050.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue3使用Uni-ui的popup弹出层组件

由于uni-ui中有些组件文档的基于vue2编写的&#xff0c;比如popup组件 下面是vue3的写法 除了文档中要求的aleterDialog外&#xff0c;还得利用v-if设置一个isDialog判断 // template // script 解决

数学建模笔记——TOPSIS[优劣解距离]法

数学建模笔记——TOPSIS[优劣解距离法] TOPSIS(优劣解距离)法1. 基本概念2. 模型原理3. 基本步骤4. 典型例题4.1 矩阵正向化4.2 正向矩阵标准化4.3 计算得分并归一化4.4 python代码实现 TOPSIS(优劣解距离)法 1. 基本概念 C. L.Hwang和 K.Yoon于1981年首次提出 TOPSIS(Techni…

【Linux网络】详解TCP协议(1)

&#x1f389;博主首页&#xff1a; 有趣的中国人 &#x1f389;专栏首页&#xff1a; Linux网络 &#x1f389;其它专栏&#xff1a; C初阶 | C进阶 | 初阶数据结构 小伙伴们大家好&#xff0c;本片文章将会讲解 TCP协议 的相关内容。 如果看到最后您觉得这篇文章写得不错&am…

力扣每日一题 有序数组的平方 双指针 逆向思维

Problem: 977. 有序数组的平方 &#x1f468;‍&#x1f3eb; 灵神题解 class Solution {public int[] sortedSquares(int[] nums) {int n nums.length;int [] ans new int[n];int p n-1;int i 0;int j n-1;while(p > 0){int x nums[i] * nums[i];int y nums[j] * n…

结构体小知识

目录 前言1.结构体数组1.1结构体数组理解1.2结构体数组知识运用1.3 -> 操作符 2. 知识拓展 前言 本期blog是对上一期指针知识的知识补充&#xff0c;如果各位大佬感兴趣的话&#xff0c;可以结合起来一起看&#xff01; 1.结构体数组 1.1结构体数组理解 结构体数组在本…

关系的规范化与范式详解

在数据库设计中&#xff0c;关系的规范化是确保数据结构合理性、减少冗余和异常的关键步骤。如果你是一个数据库设计的初学者&#xff0c;这篇文章将为你深入浅出地讲解 关系规范化 和 范式 的核心概念&#xff0c;并通过简洁的示例帮助你加深理解。 关系的规范化&#xff1a;…

JavaScript进阶day1

目录 1.作用域 1.1 局部作用域 1.2 全局作用域 1.3 作用域链 1.4 JS垃圾回收机制 1.4.1 什么是垃圾回收机制&#xff1f; 1.4.2 内存的生命周期 1.4.3 算法说明 1.5 闭包 1.6 变量提升 2.函数进阶 2.1 函数提升 2.2 函数参数 2.2.1 动态参数 2.2.2 剩余参数 2.…

GB2312编码(加2020H、8080H原理)

区位码、内码、国标码 转换及原理 背景答题思考相关资料 背景 问题: 某汉字的国标码为5650H&#xff0c;那么它的机内码为&#xff08; B &#xff09;。A E6E0H B D6D0H C C6C0H D 8080H答题 思考 为什么要加上2020H和8080H&#xff1f;区位码、内码、国标码怎么转换非常简单…

【硬件知识】关于RAM的“那些事”

文章目录 一、DRAM&#xff08;动态随机存取存储器&#xff09;二、SRAM&#xff08;静态随机存取存储器&#xff09;三、DRAM和SRAM的差异与区别 一、DRAM&#xff08;动态随机存取存储器&#xff09; 工作原理&#xff1a;DRAM使用电容来存储数据。每一位数据通过一个电容和…

【深度学习讲解笔记】第1章-机器学习基础

1.机器学习是什么 机器学习&#xff08;Machine Learning&#xff0c;ML&#xff09;&#xff0c;顾名思义就是让机器学会做一件事情&#xff0c;比如语音识别&#xff0c;机器听一段声音&#xff0c;产生这段声音对应的文字。或是识别图片中有几个人&#xff0c;几辆车。这些…

2024年语音识别转文字工具的崛起

无论是繁忙的会议记录、远程教学的即时笔记&#xff0c;还是日常生活的语音备忘&#xff0c;只需轻轻一说&#xff0c;便能瞬间转化为清晰可编辑的文字&#xff0c;这种便捷与高效无疑为现代生活增添了无限可能。本文将带你深入探索语音识别转文字工具的奥秘。 1.365在线转文字…

【Python篇】matplotlib超详细教程-由入门到精通(上篇)

文章目录 第一部分&#xff1a;基础概念与简单绘图1.1 matplotlib 简介1.2 创建第一个折线图1.3 图表的基本组成元素 第二部分&#xff1a;图表样式与修饰2.1 修改图表样式2.2 添加图例2.3 调整坐标轴与刻度 第三部分&#xff1a;绘制不同类型的图表3.1 散点图 (Scatter Plot)3…

使用 Homebrew 在 macOS 上安装 Conda

Homebrew 是一个流行的 macOS 包管理器&#xff0c;可以帮助你安装和管理各种软件包。 以下是使用 Homebrew 安装 Conda 的步骤&#xff1a; 1. 安装 Homebrew 如果你还没有安装 Homebrew&#xff0c;可以通过以下命令安装&#xff1a; /bin/bash -c "$(curl -fsSL htt…

《机器学习》—— XGBoost(xgb.XGBClassifier) 分类器

文章目录 一、XGBoost 分类器的介绍二、XGBoost&#xff08;xgb.XGBClassifier&#xff09; 分类器与随机森林分类器&#xff08;RandomForestClassifier&#xff09;的区别三、XGBoost&#xff08;xgb.XGBClassifier&#xff09; 分类器代码使用示例 一、XGBoost 分类器的介绍…

微信小程序 自定义组件

1. 微信小程序 自定义组件 微信小程序支持组件化开发&#xff0c;这有助于我们复用代码&#xff0c;提高开发效率。下面我将给出一个简单的微信小程序组件化示例&#xff0c;包括一个自定义组件的创建和使用。 1.1. 创建自定义组件 首先&#xff0c;在项目的 components 目录…

建筑二次供水的基本概念

什么是二次供水&#xff1f; 二次供水是城市供水的主要组成部分&#xff0c;是指集中式供水在入户之前经再度储存、加压和消毒后&#xff0c;通过管道输送给用户的供水方式。 为什么要使用二次供水&#xff1f; 由于市政供水的服务水压通常只能达到较低的楼层&#xff0c;而…

部分库函数及其模拟

前言&#xff1a;当我们学习c/c库函数的时候&#xff0c;我们可以用网站 cplusplus.com - The C Resources Network 来进行查阅&#xff0c;学习。 目录 库函数&#xff1a; 1.字符串函数 1.1求字符串长度 strlen 1.2长度不受限制的字符串函数 1.2.1strcpy 1.2.2strca…

“阡陌云旅”黄河九省文化旅游平台

“阡陌云旅”黄河九省文化旅游平台 GitHub地址&#xff1a;https://github.com/guoJiaQi-123/Yellow-River-Cloud-Journey 项目背景 “阡陌云旅”黄河九省文化旅游平台 “阡陌云旅” 黄河九省文化旅游平台是一个专注于黄河流域九省文化旅游资源整合与推广的项目。 黄河是中…

Spring Framework系统框架

序号表示的是学习顺序 IoC&#xff08;控制反转&#xff09;/DI&#xff08;依赖注入&#xff09;: ioc&#xff1a;思想上是控制反转&#xff0c;spring提供了一个容器&#xff0c;称为IOC容器&#xff0c;用它来充当IOC思想中的外部。 我的理解就是spring把这些对象集中管理…

HomeAssistant添加HACS绑定米家与苹果HomeKit设备并实现远程管理

文章目录 前言1. 下载HACS源码2. 添加HACS商店3. 绑定米家设备 前言 之前介绍过如何实现在群晖NAS使用Docker部署HomeAssistant&#xff0c;通过内网穿透在户外控制家庭智能设备。本文将介绍如何在HA平台安装HACS插件商店&#xff0c;将米家&#xff0c;果家设备接入 Home Ass…