PyTorch 随机数生成占用 CPU 过高的解决方法
作者:lucasgyshen 时间:2021-09-23 09:12:31
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)
来源:https://blog.csdn.net/a463560470/article/details/82985905
标签:PyTorch,随机数,生成,CPU
0
投稿
猜你喜欢
python 实现多线程的三种方法总结
2022-10-17 07:09:11
phpMyAdmin下载、安装和使用入门
2007-06-15 11:00:00
babel的使用及安装配置教程
2024-04-19 10:26:11
python 文件下载之断点续传的实现
2023-07-18 21:57:16
vscode使用nuget包管理工具
2023-10-30 13:37:55
linux系统使用python获取cpu信息脚本分享
2021-10-18 17:45:30
Python 解决OPEN读文件报错 ,路径以及r的问题
2022-06-12 11:06:41
不安全的js写法
2009-09-16 14:26:00
扩展数据库系统选项实现更高的可扩展性
2009-01-06 11:14:00
sql2000如何完美压缩.mdf文件
2010-03-03 15:47:00
Python的Flask框架使用Redis做数据缓存的配置方法
2024-01-21 18:37:47
详解python ThreadPoolExecutor异常捕获
2023-08-09 12:54:30
python具名元组(namedtuple)的具体使用
2021-08-02 18:10:38
python网络编程之文件下载实例分析
2021-06-04 08:02:29
python:socket传输大文件示例
2022-04-18 19:44:26
通过mysql show processlist 命令检查mysql锁的方法
2024-01-19 22:03:11
深入了解Vue组件七种通信方式
2024-04-27 16:03:01
Springboot连接数据库及查询数据完整流程
2024-01-18 07:25:29
python使用pygame模块实现坦克大战游戏
2022-01-15 01:30:38
Python3 Post登录并且保存cookie登录其他页面的方法
2023-08-18 22:45:52