pytorch使用指定GPU训练的实例


Posted in Python onAugust 19, 2019

本文适合多GPU的机器,并且每个用户需要单独使用GPU训练。

虽然pytorch提供了指定gpu的几种方式,但是使用不当的话会遇到out of memory的问题,主要是因为pytorch会在第0块gpu上初始化,并且会占用一定空间的显存。这种情况下,经常会出现指定的gpu明明是空闲的,但是因为第0块gpu被占满而无法运行,一直报out of memory错误。

解决方案如下:

指定环境变量,屏蔽第0块gpu

CUDA_VISIBLE_DEVICES = 1 main.py

这句话表示只有第1块gpu可见,其他gpu不可用,此时要注意第1块gpu已经变成第0块,因此代码里应该使用编号0来指定gpu。如果依然使用cuda:1会报invalid device ordinal。

当然也可以在代码里使用os模块达到同样效果:

import os

#多块使用逗号隔开
os.environ['CUDA_VISIBLE_DEVICES'] = '1'
使用torch.cuda.device
with torch.cuda.device(1):
 ...

注意这种情况下gpu编号也会改变

关于这个问题的讨论,感兴趣的也可以去这里查看cuda out of memory error when GPU0 memory is fully utilized

以上这篇pytorch使用指定GPU训练的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现k均值算法示例(k均值聚类算法)
Mar 16 Python
python使用wmi模块获取windows下的系统信息 监控系统
Oct 27 Python
Python创建xml文件示例
Mar 22 Python
python技能之数据导出excel的实例代码
Aug 11 Python
python3.5 tkinter实现页面跳转
Jan 30 Python
python 数字类型和字符串类型的相互转换实例
Jul 17 Python
在python中对变量判断是否为None的三种方法总结
Jan 23 Python
PyQt弹出式对话框的常用方法及标准按钮类型
Feb 27 Python
Python面向对象程序设计之类的定义与继承简单示例
Mar 18 Python
Python3.7 读取 mp3 音频文件生成波形图效果
Nov 05 Python
详解Django配置优化方法
Nov 18 Python
如何使用Tkinter进行窗口的管理与设置
Jun 30 Python
关于pytorch多GPU训练实例与性能对比分析
Aug 19 #Python
pytorch 更改预训练模型网络结构的方法
Aug 19 #Python
pytorch打印网络结构的实例
Aug 19 #Python
pytorch索引查找 index_select的例子
Aug 18 #Python
浅谈Pytorch中的torch.gather函数的含义
Aug 18 #Python
PyTorch中Tensor的维度变换实现
Aug 18 #Python
PyTorch中Tensor的拼接与拆分的实现
Aug 18 #Python
You might like
基于PHP读取csv文件内容的详解
2013/06/18 PHP
用 Composer构建自己的 PHP 框架之基础准备
2014/10/30 PHP
简单了解PHP编程中数组的指针的使用
2015/11/30 PHP
针对thinkPHP5框架存储过程bug重写的存储过程扩展类完整实例
2018/06/16 PHP
Ext JS添加子组件的误区探讨
2013/06/28 Javascript
14个有用的Jquery技巧分享
2015/01/08 Javascript
使用JavaScript开发IE浏览器本地插件实例
2015/02/18 Javascript
jQuery实现切换字体大小的方法
2015/03/10 Javascript
javascript+HTML5自定义元素播放焦点图动画
2016/02/21 Javascript
js实现页面跳转的五种方法推荐
2016/03/10 Javascript
基于JavaScript实现树形下拉框
2016/08/10 Javascript
用js控件div的滚动条,让它在内容更新时自动滚到底部的实现方法
2016/10/27 Javascript
微信小程序 PHP后端form表单提交实例详解
2017/01/12 Javascript
jquery实现的table排序功能示例
2017/03/10 Javascript
10个最优秀的Node.js MVC框架
2017/08/24 Javascript
解决vue.js在编写过程中出现空格不规范报错的问题
2017/09/20 Javascript
vue跨域解决方法
2017/10/15 Javascript
js Dom实现换肤效果
2017/10/21 Javascript
Vue实现底部侧边工具栏的实例代码
2018/09/03 Javascript
VUE 配置vue-devtools调试工具及安装方法
2018/09/30 Javascript
Vue编程式跳转的实例代码详解
2019/07/10 Javascript
Selenium向iframe富文本框输入内容过程图解
2020/04/10 Python
客服服务心得体会
2013/12/30 职场文书
敬老文明号事迹材料
2014/01/16 职场文书
食品采购员岗位职责
2014/04/14 职场文书
事业单位鉴定材料
2014/05/25 职场文书
研究生求职自荐书
2014/06/23 职场文书
机关职员工作检讨书
2014/10/23 职场文书
工程项目经理岗位职责
2015/02/02 职场文书
博士生专家推荐信
2015/03/25 职场文书
小学生表扬稿范文
2015/05/05 职场文书
甲午大海战观后感
2015/06/02 职场文书
2016幼儿园毕业感言
2015/12/08 职场文书
2019新员工试用期转正工作总结范文
2019/08/21 职场文书
导游词之阆中古城
2019/12/23 职场文书
python实战之一步一步教你绘制小猪佩奇
2021/04/22 Python