详解win10下pytorch-gpu安装以及CUDA详细安装过程
作者:mind_programmonkey 发布时间:2023-07-01 07:21:36
1.Cuda的下载安装及配置
首先我们要确定本机是否有独立显卡。在计算机-管理-设备管理器-显示适配器中,查看是否有独立显卡。
可以看到本机有一个集成显卡和独立显卡NVIDIA GetForce GTX 1050。
接下来,测试本机独立显卡是否支持CUDA的安装,点击此处查询显卡是否在列表中。
从上图中,可以看到我本机的独立显卡是支持CUDA安装的,计算力是6.1。
那么,接下来就是选择CUDA进行安装即可,点击此处
这里我选了CUDA Toolkit10.0的版本,至于选择哪个版本,个人认为应该没多大差别,一般就是看这个版本是否要求GPU的计算能力是多少以上。大约是2.1G。我用windows的IDM下载工具下载的,速度蛮快的。
接着就是安装过程,双击打开显示临时解压目录,不需要改变,默认即可。
接下来,进入NVIDIA安装过程,在这安装过程中,我一开始直接选择的精简安装,但由于VS的原因,导致无法正常安装,于是我换成了自定义的安装方式,并将VS勾给去掉,便可以正常安装了,至于CUDA的安装目录,大家默认安装在C盘即可。
安装完成之后,便是配置环境变量。环境变量配置如下图所示。
测试CUDA是否正常安装。可以看到测试成功,接着进行cudnn的下载。
2.CUDNN的下载及配置
点击此处,选择下载download cudnn,但这里需要你注册一个账号,然后进行问卷之后才可以进行下载页面,反正一步步操作即可。
然后因为我上一步CUDA的版本是10.0,而CUDNN的版本要跟CUDA版本一致,所以选择第二个下载即可。
下载之后,解压缩,将CUDNN压缩包里面的bin、clude、lib文件直接复制到CUDA的安装目录下,直接覆盖安装即可。
3.pytorch-gpu的安装
直接来到Pytorch的官网,此处,因为根据自己的配置进行选择,我试过用conda安装,但是conda安装老是不成功,也替换过清华镜像源,但速度实在是龟速,半天没动静。虽然pip下载也蛮慢,但至少可以安装成功。这里我对pip的安装方式,稍作修改,让其直接从清华镜像源下载。然后慢慢等待安装成功即可。
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple torch==1.2.0 torchvision==0.4.0 -f https://download.pytorch.org/whl/torch_stable.html
然后命令行验证pytorch是否正常安装成功,这里可以正常打印出版本号,安装没问题。
import torch
print(torch.__version__)
但接下来我尝试让其输出是否可以正常调用CUDA,却输出False.
print(torch.cuda.is_available())
经过一段时间的交流,找到问题所在。因为我本机是集成显卡和独立显卡并存,可能是因为默认调用集成显卡而造成的问题,那么接下来就是将独立显卡设为默认即可。
但我因为多次尝试的结果,成功将我本机的NAVIDIA控制面板给卸载掉了,无法正常打开,所以我还需要重新下载NVIDIA的控制面板,来到官网此处,选择对应的版本下载安装即可。
然后右键打开NIVIDIA控制面板,选择管理3D设置,全局设置中选择高性能NVIDIA处理器即可。
然后在命令行下重新输入
import torch
print(torch.cuda.is_available())
即可返回True,若还返回False的话 ,记得重启一下电脑,遇到问题重启一下电脑,看是否可以正常显示。
来源:https://blog.csdn.net/Mind_programmonkey/article/details/99688839


猜你喜欢
- 需求当需要同时ping/telnet多个ip时,可以通过引入ping包/telnet包实现,也可以通过go调用cmd命令实现,不过后者调用效
- 本文实例讲述了Python素数检测的方法。分享给大家供大家参考。具体如下:该程序实现了素数检测器功能,如果结果是true,则是素数,如果结果
- 操作系统:macOS High Sierra 10.13.3Python3.6因为此版本自带python2.7,就下载并安装了anacond
- python的numpy库集成了很多的函数。利用其中的函数可以很方便的解决一些数学问题。本篇介绍如何使用python的numpy来求解积分。
- CSV means Comma Separated Values. It is plain text (ansi).The CSV (&qu
- 判断不仅包括电脑浏览器,还包括安卓、ios系统的手机以及平板电脑,游戏系统 var client = function(){ //呈现引擎
- MySQL是一个大数据库。有的数据库里面个有种各样的数据。如果不按照规定划分好会显得看起来很乱。凡是东西都要通过整理才能规矩,每一堆数据整理
- 前言排序是数据库中的一个基本功能,MySQL也不例外。用户通过Order by语句即能达到将指定的结果集排序的目的,其实不仅仅是Order
- 字典的常用方法方便举例,先创建2个字典list_test={"bob":19,"aoa":18,&q
- 函数:string.join()Python中有join()和os.path.join()两个函数,具体作用如下:join(): 连接字符串
- 类中定义的方法大致可以分为两类:绑定方法和非绑定方法。其中绑定方法又可以分为绑定到对象的方法和绑定到类的方法。一、绑定方法1 对象的绑定方法
- 在做开发的朋友特别是和mysql有接触的朋友会碰到有时mysql查询很慢,当然我指的是大数据量百万千万级了,不是几十条了,下面我们来看看解决
- 常用方法浅拷贝copya = {"ilpy1": {"company": "aaa&quo
- 1. Python的数据类型上一遍博文已经详细地介绍了Python的数据类型,详见链接Python的变量命名及数据类型。在这里总结一下Pyt
- 列表解析 在需要改变列表而不是需要新建某列表时,可以使用列表解析。列表解析表达式为: [expr for iter_var in itera
- 1. 概述Promise对象是ES6提出的的异步编程的规范。说到异步编程,就不得不说说同步和异步这两个概念。从字面意思理解同步编程的话,似乎
- Response是负责将信息传递给用户的对象,它可动态地响应客户端的请求,并将动态生成的响应结果返回给客户端浏览器。 一,Resp
- 1) ERROR 1222 (21000): The used SELECT statements have a different num
- 一、了解seleniumSelenium是一个用于测试网站的自动化测试工具,支持各种浏览器包括Chrome、Firefox、Safar等浏览
- 本文实例讲述了php实现的美国50个州选择列表。分享给大家供大家参考。具体如下:这里展示的是php生成的美国50个州的选择列表,自动选择当前