时间:2021-05-22
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 过高的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
分享下php生成随机数的三种方法,生成1-10之间的不重复随机数,php生成不重复随机数的例子,需要的朋友参考下。如何用php生成1-10之间的不重复随机数?例
在使用PyTorch做实验时经常会用到生成随机数Tensor的方法,比如:torch.rand()torch.randn()torch.normal()torc
如何用php生成1-10之间的不重复随机数?例1,使用shuffle函数生成随机数。例2,使用array_unique函数生成随机数。php随机数生成函数示例
本文介绍了ASP生成不重复随机数的方法,asp生成不重复随机数的实例代码,有需要的朋友参考下。 例1,ASP生成随机数,很简单: 代码示例:Random
在JavaScript中我们经常使用Math.random()方法生成随机数,但是该方法生成的随机数只是0-1之间的随机数。先看如下常用方法的特征:•