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

 更新时间:2020年01月13日 09:40:52   作者:lucasgyshen  
今天小编就为大家分享一篇PyTorch 随机数生成占用 CPU 过高的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

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+selenium点击网页上指定坐标的实例

    Python+selenium点击网页上指定坐标的实例

    今天小编就为大家分享一篇Python+selenium点击网页上指定坐标的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • Python+opencv+pyaudio实现带声音屏幕录制

    Python+opencv+pyaudio实现带声音屏幕录制

    今天小编就为大家分享一篇Python+opencv+pyaudio实现带声音屏幕录制,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Python接口自动化浅析yaml配置文件原理及用法

    Python接口自动化浅析yaml配置文件原理及用法

    本文主要给大家介绍了yaml语法、yaml储存数据,封装类读取yaml配置文件,以及yaml的用法和其原理,有需要的朋友可以参考下,希望可以有所帮助
    2021-08-08
  • Python深度学习之使用Pytorch搭建ShuffleNetv2

    Python深度学习之使用Pytorch搭建ShuffleNetv2

    这篇文章主要介绍了Python深度学习之使用Pytorch搭建ShuffleNetv2,文中有非常详细的图文示例,对正在学习python的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-05-05
  • Windows和Linux下使用Python访问SqlServer的方法介绍

    Windows和Linux下使用Python访问SqlServer的方法介绍

    这篇文章主要介绍了Windows和Linux下使用Python访问SqlServer的方法介绍,本文讲解了Windows下配置Python访问Sqlserver、Linux下配置Python访问SqlServer等内容,需要的朋友可以参考下
    2015-03-03
  • pip命令无法使用的解决方法

    pip命令无法使用的解决方法

    今天小编就为大家分享一篇pip命令无法使用的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • python numpy存取文件的方式

    python numpy存取文件的方式

    NumPy提供了多种存取数组内容的文件操作函数。保存数组数据的文件可以是二进制格式或者文本格式。这篇文章主要介绍了python利用numpy存取文件,需要的朋友可以参考下
    2019-09-09
  • 教你在pycharm中使用tensorflow的方法

    教你在pycharm中使用tensorflow的方法

    当前使用的是anaconda的3.8版本,无法正常下载tensorflow包,需要构建虚拟环境使用3.7及以下的解释器才可以,如何解决这个问题呢,下面小编给大家带来了如何在pycharm中使用tensorflow,感兴趣的朋友参考下吧
    2021-11-11
  • pytorch Dropout过拟合的操作

    pytorch Dropout过拟合的操作

    这篇文章主要介绍了pytorch Dropout过拟合的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • Python实现日期判断和加减操作详解

    Python实现日期判断和加减操作详解

    这篇文章主要介绍了如何利用Python实现日期的判断,以及对日期的加减操作,文中的示例代码对我们学习或工作有一定的价值,需要的可以参考一下
    2022-01-01

最新评论