gpu运行pycharm
如何使用自己电脑上自带的GPU来运行pycharm中的程序
- 准备工作:在代码中指定gpu来运行
- 第一步:cuda的安装
- 第二步:mxnet的安装
- 第三步:可能的numpy问题
- 附1:如何回到CPU模式
- 附2:如何判断自己是否在用GPU
准备工作:在代码中指定gpu来运行
如果需要用gpu运行代码,必须先在代码中指定gpu,即将相应的值存储在显存上,这是第一步
1.默认情况下,数据都是存放在内存上,如
x = nd.array([1, 2, 3])
print(x)
会输出
说明此时是在cpu上运行,如果为了查看某矩阵所在的设备,可以使用其context属性
print(x.context)
会输出cpu(0),表示在第0块cpu上
2.将值存储在GPU上
方法一:直接将变量创建在gpu(0)上
a = nd.array([1, 2, 3], ctx = mx.gpu(0)) # 放在第0块gpu上,如果括号内不填数字,也是默认0
方法二:通过copyto函数或as_in_context函数在设备之间传输数据,如将前文中内存上的x变量复制到gpu(0)上
使用copyto函数复制到显存中的变量y
y = x.copyto(mx.gpu())
使用as_in_context函数复制到显存中的变量z
z = x.as_in_context(mx.gpu())
之后的计算会在context指定的设备上进行
3.Gluon模型的GPU计算
初始化神经网络时,也需要将模型参数初始化在显存上
net = nn.Sequential()
net.add(nn.Dense(1))
net.initialize(ctx = mx.gpu(0))
第一步:cuda的安装
首先进入NCIVA控制面板,点击左下方系统信息,再点击组件,发现在3D设置里面有CUDA11.1,但是这个CUDA貌似在Pycharm中无法同时,同时按:Win+R,输入cmd后,在命令行中输入:
nvcc --version #用于查看cuda版本
提示:不是内部命令或外部命令,也不是可运行程序,于是推测并没有真正安装CUDA,所以下一步就是去安装CUDA
进入网站:https://developer.nvidia.com/cuda-toolkit-archive
找到对应的CUDA版本下载。我用的是mxnet,所以下载10版本即可,11版本目前没有对应的gpu版本的mxnet,这点需要注意,下载后默认安装即可。
然后再次查看CUDA 版本(方法同上),发现已经安装成功
第二步:mxnet的安装
备注:如果需要pip install xxx的话,不要在电脑命令行中进行(即cmd那种),直接在pycharm的terminal中输入命令操作,否则会出各种问题!!!!
注意:下面操作均在pycharm的terminal中进行!!!!
大家可能最开始时,都是在pycharm中通过:
pip install mxnet
但这是安装了cpu版本的mxnet,可以正常运行在cpu下运行代码,但是不可以在gpu下运行代码,为此我们需要安装gpu版本的mxnet。
首先,卸载cpu版本的mxnet
pip uninstall mxnet
然后安装gpu版本的mxnet,必须注意的是,这里安装的mxnet版本和我们第一步安装的CUDA版本必须兼容,否则会出问题。这里以我安装的CUDA 10.1版本为例,安装对应mxnet
pip install --pre mxnet-cu101
①代码中的101指的就是版本,如果你安装的CUDA是9.2,那么这里就是cu92
②mxnet前面必须加–pre,否则安装完成照样运行不了(原因未知)
第三步:可能的numpy问题
成功完成上述操作后,运行代码时发现提示AttributeError: module ‘numpy’ has no attribute ‘int32’’,这时我们需要先卸载原来的numpy
pip uninstall numpy
(推测)然后安装这个版本下的numpy
pip install -U numpy
至此大功告成,应该已经可以使用gpu运行代码了
附1:如何回到CPU模式
先卸载已安装的GPU模式的mxnet-cu101
(如果不影响安装cpu的mxnet的话,貌似也可以不卸载)
pip uninstall mxnet-cu101
再安装cpu版本的mxnet
pip install mxnet
会发现连cpu版本对应的numpy也安装好了,这是就可以重新用CPU进行运行啦~
附2:如何判断自己是否在用GPU
按照上述操作使用GPU跑代码时,直观上确实发现速度比最开始的CPU快很多,但为了确定一下确实是用GPU,故运行时打开任务管理器:
发现GPU利用率始终是0。但是在代码运行过程中和停止运行后,用cmd命令:nvidia-smi 查看GPU情况,发现并不一样
左为停止状态下,右为运行状态下
从左到右红框的五项指标依次表示:
①显卡温度
②性能状态,从P0到P12,P0表示最大性能,P12表示最小性能
③当前功率
④系统占用显存数量和显存总大小
⑤显存核心利用率
可以得知,确实是在用GPU运行,那么就是任务管理器出问题了
查阅了一些资料发现,解决方法有两个:
1.GPU检测的驱动出了一些问题,到网上下载个驱动修复之类的就行
2.专门下载一个GPU监测的小程序也可
gpu运行pycharm相关推荐
- GPU运行Tensorflow详细教程及错误解决
GPU运行Tensorflow详细教程及错误解决 前提条件 配置GPU运行 确认是否成功配置 出现的错误及解决方案 前提条件 最重要的一点:CUDA与tensorflow的版本一点要对应,不然用不了! ...
- win运行pycharm找不到要加载的model.pkl文件是workingspace设置路径与文件路径位置不对应
windows环境中运行pycharm提示找不到要加载的model.pkl路径,原来是pycharm中有一个workingspace设置的路径没有跟当前代码的路径位置对应所致. pycharm中左边文 ...
- 成功解决:Win系统下的Tensorflow使用CPU而不使用GPU运行加速
成功解决:Win系统下的Tensorflow使用CPU而不使用GPU运行加速 目录 解决问题 解决思路 解决方法 解决问题 Win系统下的Tensorflow使用CPU而不使用GPU运行加速 解决思路 ...
- 多GPU运行Deep Learning 和 并行Deep Learning(待续)
本文论述了 Deep learning运行所需的硬件配置,多GPU运行Deep Learning,设置Deep Learning的数据并行和 模型并行.详情请参考下文 http://timdettme ...
- 使用Google colab的GPU运行resnet
使用Google colab的GPU运行resnet 由于我的电脑显卡是AMD,跑代码每一个epoch都要超级超级久,偶然间听到了Google colab,于是用起来了,感觉非常爽 Colaborat ...
- Macbook Pro 外接显卡实现Tensorflow GPU运行之内屏输出
Macbook Pro 外接显卡实现Tensorflow GPU运行–内屏输出 MacOS 重装 外接显卡(内屏输出)
- Android 读取CPU/GPU运行参数(MTK平台)
一.使用场景 Android运行一段世时间后,系统出现卡顿 二.分析&定位问题 系统卡顿,同时又发现芯片温度很高,怀疑是温度过高导致CPU降频,因此我们要将一段时间内CPU的运行信息打印出来. ...
- Macbook Pro 外接显卡实现Tensorflow GPU运行之环境配置(重点)
Macbook Pro 外接显卡实现Tensorflow GPU运行–环境配置 MacOS 重装 外接显卡(内屏输出) 环境配置(重点)
- Macbook Pro 外接显卡实现Tensorflow GPU运行之MacOS系统重装
Macbook Pro 外接显卡实现Tensorflow GPU运行-MacOS重装 MacOS 重装
最新文章
- Python PIL反色混合
- Mybatis中的核心配置文件SqlMapConfig.xml详细介绍
- python3字符串处理,高效切片
- opencv12-图像金字塔
- 第一章 软件工程概论
- 参考的datalist分页helper
- ol+天地图+geoserver_GeoServer的WMS服务加载到天地图
- 移动支付到底有多美?
- ND2D源码及范例工程(编译通过)
- java 整数加减乘除_java实现超大整数加减乘除四则运算
- 适配器模式之享元模式
- FRR BGP协议分析4 -- 路由更新(1)
- springBoot整合redis使用介绍(详细案例)
- 百度认证(深度学习初级工程师)考试题1
- VMware破解密码
- 自定义ViewGroup——自定义布局
- Mybatis Plus分页Page total始终为0
- 《设计模式:可复用面向对象软件的基础》——引言(笔记)
- Activiti6.0流程引擎学习——(22)activiti的任务管理服务(TaskService)
- Windows7系统优化,优化达到30多项,速度大幅提升,
热门文章
- SQL语句(三) 更新语句(增 删 改)
- Flutter 时间戳转换成时间 时间字符串转换成时间戳
- linux系统删除lammps任务,Linux 的常用命令
- 了matlab进行LR检验的代码,求助,matlab空间回归的LR检验显示错误该怎么办?
- 跟着开源项目学因果推断——FixedEffectModel 固定效应模型(十七)
- 定位综合案例-淘宝轮播图
- Java内存模型的抽象结构
- MATLAB之最优路径的查找
- iphone文件连接smb服务器,实用!三种iPhone与Windows电脑互传文件操作技巧,建议收藏...
- DC-DC电源模块的九个主要性能指标和作用