PyTorch 随机数生成占用 CPU 过高的解决方法


Posted in Python onJanuary 13, 2020

PyTorch 随机数生成占用 CPU 过高的问题

今天在使用 pytorch 的过程中,发现 CPU 占用率过高。经过检查,发现是因为先在 CPU 中生成了随机数,然后再调用.to(device)传到 GPU,这样导致效率变得很低,并且CPU 和 GPU 都被消耗。

查阅PyTorch文档后发现,torch.randn(shape, out)可以直接在GPU中生成随机数,只要shape是tensor.cuda.Tensor类型即可。这样,就可以避免在 CPU 中生成过大的矩阵,而 shape 变量是很小的。

因此,下面的代码就可以进行这种操作了。

noise = torch.cuda.FloatTensor(shape) if torch.cuda.is_available() else torch.FloatTensor(shape)
torch.randn(shape, out=noise)

以上这篇PyTorch 随机数生成占用 CPU 过高的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Pyramid Mako模板引入helper对象的步骤方法
Nov 27 Python
Python跳出循环语句continue与break的区别
Aug 25 Python
python解析基于xml格式的日志文件
Feb 25 Python
django+js+ajax实现刷新页面的方法
May 22 Python
Python 含参构造函数实例详解
May 25 Python
python 把文件中的每一行以数组的元素放入数组中的方法
Apr 29 Python
Django2.1集成xadmin管理后台所遇到的错误集锦(填坑)
Dec 20 Python
浅谈Python基础—判断和循环
Mar 22 Python
python单向链表的基本实现与使用方法【定义、遍历、添加、删除、查找等】
Oct 24 Python
Python 实现向word(docx)中输出
Feb 13 Python
Python基于Socket实现简易多人聊天室的示例代码
Nov 29 Python
pytorch 实现变分自动编码器的操作
May 24 Python
python批量处理txt文件的实例代码
Jan 13 #Python
Python hashlib常见摘要算法详解
Jan 13 #Python
Pytorch释放显存占用方式
Jan 13 #Python
pytorch 实现删除tensor中的指定行列
Jan 13 #Python
python基于event实现线程间通信控制
Jan 13 #Python
pytorch 实现张量tensor,图片,CPU,GPU,数组等的转换
Jan 13 #Python
python、PyTorch图像读取与numpy转换实例
Jan 13 #Python
You might like
浅谈PHP正则表达式中修饰符/i, /is, /s, /isU
2014/10/21 PHP
php获取开始与结束日期之间所有日期的方法
2016/11/29 PHP
PHP图像处理 imagestring添加图片水印与文字水印操作示例
2020/02/06 PHP
js 动态选中下拉框
2009/11/26 Javascript
javascript SpiderMonkey中的函数序列化如何进行
2012/12/05 Javascript
js 判断计算字符串长度/判断空的简单方法
2013/08/05 Javascript
IE、FF浏览器下修改标签透明度
2014/01/28 Javascript
javascript原生和jquery库实现iframe自适应高度和宽度
2014/07/18 Javascript
js限制文本框的输入内容代码分享(3类)
2015/08/20 Javascript
JavaScript获取页面中超链接数量的方法
2015/11/09 Javascript
全面解析多种Bootstrap图片轮播效果
2016/05/27 Javascript
JavaScript 事件对内存和性能的影响
2017/01/22 Javascript
关于jquery中attr()和prop()方法的区别
2018/05/28 jQuery
JavaScript常见事件对象与操作实例总结
2019/01/05 Javascript
vue基础之事件简写、事件对象、冒泡、默认行为、键盘事件实例分析
2019/03/11 Javascript
Python过滤函数filter()使用自定义函数过滤序列实例
2014/08/26 Python
Python 序列化 pickle/cPickle模块使用介绍
2014/11/30 Python
在DigitalOcean的服务器上部署flaskblog应用
2015/12/19 Python
python cx_Oracle的基础使用方法(连接和增删改查)
2017/11/19 Python
django加载本地html的方法
2018/05/27 Python
python用pandas数据加载、存储与文件格式的实例
2018/12/07 Python
pandas DataFrame 交集并集补集的实现
2019/06/24 Python
基于Django ORM、一对一、一对多、多对多的全面讲解
2019/07/26 Python
基于Python解密仿射密码
2019/10/21 Python
2020版Python学习路线图(附学习资料)
2020/09/15 Python
银行自荐信范文
2013/10/07 职场文书
护士感人事迹
2014/05/01 职场文书
班组建设经验交流材料
2014/05/12 职场文书
企业文化标语口号
2014/06/09 职场文书
房屋过户委托书范本
2014/10/07 职场文书
2014年幼儿园教研工作总结
2014/12/04 职场文书
介绍长城的导游词
2015/01/30 职场文书
2015年世界卫生日活动总结
2015/02/09 职场文书
科级干部培训心得体会
2016/01/06 职场文书
原来闭幕词是这样写的呀!
2019/07/01 职场文书
MySQL 使用索引扫描进行排序
2021/06/20 MySQL