pycharm安装torch和cuda(在anaconda创建的新环境下)[通俗易懂]

pycharm安装torch和cuda(在anaconda创建的新环境下)[通俗易懂]pycharm安装torch和cuda(在anaconda创建的新环境下)

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

1.问题所在

pycharm中torch和tensorflow好像是有些冲突的,所以我创建了两个conda环境(一个名字叫pytorch,一个名字叫tensorflow),其中pytorch环境中没有tensorflow库,tensorflow环境同理。

现在问题在于每次在Terminal中用pip install torch 后总是cpu版本的

pip install torch 

Jetbrains全家桶1年46,售后保障稳定

import torch
print(torch.__version__)
print(torch.cuda.is_available())

这段代码是看torch到底有没有用到cuda(或者我理解为是否用的是gpu版本),输出为False为cpu版本。

2.安装cuda

这个我觉得可能很多人电脑上已经安装了cuda

pycharm安装torch和cuda(在anaconda创建的新环境下)[通俗易懂]pycharm安装torch和cuda(在anaconda创建的新环境下)[通俗易懂]

可以自己在电脑中看一下到底有没有,有了更好,没了接下来讲怎么下载NVIDIA cuda

(1)查看自己应该下载NVIDIA版本

右键“此电脑”——管理——设备管理器——显示适配器
这样就能查到自己的显卡型号了

在这里插入图片描述

 NVIDIA显卡驱动的下载地址:官方高级驱动搜索 | NVIDIA
选择自己合适的型号,开始下载

(2)下载对应的cuda版本

CUDA的下载地址:https://developer.nvidia.com/cuda-downloads?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exelocal
选择合适的型号,点击download即可
在这里插入图片描述

检验安装是否安装正确:win+R→cmd→nvcc -V
如图即为安装正确

在这里插入图片描述 

至此,cuda已经安装在你的电脑里了(如果在安装图中遇到其他问题,可以继续搜搜问题所在,但是这个安装流程一定是没问题的) 。接下来就是安装gpu版本的torch

3.安装torch(在pycharm中的Terminal中,因为我喜欢用这个方式,不喜欢用cmd或者anaconda)

直接打开这个网址https://pytorch.org/get-started/locally/

pycharm安装torch和cuda(在anaconda创建的新环境下)[通俗易懂]

 

如何选择我想大家都应该能看懂,其中我用的Terminal所以Package中选的pip,第一个我看了其他博主都选的Stable,至于最后那个Compute Platform选项因为我的cuda版本就是11.7,所以选了这个(听说版本差不多接近就行 不至于那么严格)。

教大家如何选择最后的Compute Platform(即如何查看自己cuda版本)

桌面右键打开NAIDIA控制面板后,在帮助中找到系统信息,点击组件,蓝色这一条就可以看到CUDA 11.7.57(意思就是11.7版本的)

pycharm安装torch和cuda(在anaconda创建的新环境下)[通俗易懂]

pycharm安装torch和cuda(在anaconda创建的新环境下)[通俗易懂]

pycharm安装torch和cuda(在anaconda创建的新环境下)[通俗易懂]

 

 至此学会了查看cuda版本以及下载了对应于cuda的pytorch

pycharm安装torch和cuda(在anaconda创建的新环境下)[通俗易懂]

这时候基本成了,吧最后一栏中Run this Command一栏内容直接复制到Terminal中就行。

4.发现用上述方法安装torch很慢很慢

很好解决,打开网址https://download.pytorch.org/whl/torch_stable.html

进去后找到自己需要的版本,比如我是cuda11.7+python3.7+windows,就选择了下面这个

pycharm安装torch和cuda(在anaconda创建的新环境下)[通俗易懂]

 

cu代表cuda(即选用gpu版本而不是cpu版本,这里一定要看仔细),torch1.11.0版本,这个我觉得没有什么特别的要求,但我喜欢新版本,cp37代表python3.7,win代表windows系统,64代表64位。

下载后我是放在我自己创建的pytorch环境中LIB中site-package中,然后在Terminal中写入下面的代码

pip install D:\anaconda\Anaconda\envs\pytorch\Lib\site-packages\torch-1.11.0+cu113-cp37-cp37m-win_amd64.whl

代码说明:文件放在D:\anaconda\Anaconda\envs\pytorch\Lib\site-packages中,文件名字叫torch-1.11.0+cu113-cp37-cp37m-win_amd64.whl,直接回车就行。

至此问题全部解决,如何判定解决?

import torch
print(torch.__version__)
print(torch.cuda.is_available())

输出为

1.11.0+cu113
True

 希望大家能够顺利解决此类问题

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/210012.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • declare-styleable:自定义控件的属性[通俗易懂]

    declare-styleable:自定义控件的属性[通俗易懂]做Android布局是件很享受的事,这得益于他良好的xml方式。使用xml可以快速有效的为软件定义界面。可是有时候我们总感觉官方定义的一些基本组件不够用,自定义组件就不可避免了。那么如何才能做到像官方提供的那些组件一样用xml来定义他的属性呢?现在我们就来讨论一下他的用法。一、在res/values文件下定义一个attrs.xml文件,代码如下:

    2022年7月13日
    18
  • Android触摸事件_android设置按钮点击事件

    Android触摸事件_android设置按钮点击事件在Android系统中,手势的识别是通过.OnGestureListener接口来实现的,利用,摸屏的Fling、Scroll等方法可以进行滑动或翻页效果的实现;触摸屏相关的事件,是通过onTouchListener来实现的。我们可以通过MotionEvent的getAction()方法来获取Touch事件的类型,包括ACTION_DOWN,ACTION_MOVE,ACTION_UP,

    2025年9月16日
    7
  • RK平台 USB转RS485

    RK平台 USB转RS485文章目录RS232/RS485简介RS232RS485R485与RS232比较开发DTS配置驱动开发POSIX规范APIHAL层以上APP层APKcallJNIAPP调试log开启RS232/RS485/RS422常见问题RS232/RS485简介RS232RS-232是美国电子工业联盟(EIA)制定的串行数据通信的接口标准,原始编号全称是EIA-RS-232(简称232…

    2022年5月2日
    38
  • jave中的Random中rand.nextInt(int n )的取值范围

    jave中的Random中rand.nextInt(int n )的取值范围1.要求在10到300中产生随机数[10,300]包含10和300.intrandNum=rand.nextInt(300-10+1)+10;rand.nextInt(300-10+1)=rand.nextInt(291)意思是产生[0,291)不包括291再加10就是[10,301)不包括301,如果要包括300所以要rand.nextInt(300-10+1)里面要加1.

    2022年7月22日
    69
  • 第五章:redis持久化,包括rdb和aof两种方式[通俗易懂]

    第五章:redis持久化,包括rdb和aof两种方式[通俗易懂]第五章:redis持久化,包括rdb和aof两种方式

    2022年4月23日
    57
  • 我对petshop4的简单理解![通俗易懂]

    我对petshop4的简单理解![通俗易懂]petshop4充分体现了面向接口编程的思想,就是给你一个接口你别管我是怎么实现的,你只管用别说其他的。namespacePetShop.BLL{   ///   ///Abusinesscomponenttomanageproducts   ///   publicclassProduct{       //Getaninstan

    2022年8月31日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号