概述
数据在CPU与GPU之间来回切换的pytorch方法:
数据从CPU放到GPU,即数据从CPU到GPU的迁移,使用以下语句:
data.to("cuda")
数据 从GPU到CPU,使用以下语句:
data.to("cpu")
data通常会有两种数据类型:
1. Tensor
2. Module
to函数:转换数据类型/设备
1. tensor.to(*args, **kwargs)
2. module.to(*args, **kwargs)
举例:
1. tensor的to函数使用
a = torch.ones((2, 2))
a = a.to(torch.float64)
b = torch.ones((3, 3))
b = b.to("cuda")
2. module的to函数使用
fn = torch.nn.Linear((2,2))
fn.to(torch.float64)
gpu = torch.device("cuda")
fn.to(gpu)
张量与模型to函数的区别:
张量不执行inplace,模型执行inplace。也就是说,张量的to函数之后会重新构建一个新的张量,而module无需构建新的张量。
张量的cuda方法
b.cuda()
此方法也可以将张量迁移到GPU当中(与b.to("cuda")作用相同 ),但它是pytorch0.4.0之前的,现在已经弃用了。
最后
以上就是英勇楼房为你收集整理的pytorch中数据在CPU与GPU之间的切换的全部内容,希望文章能够帮你解决pytorch中数据在CPU与GPU之间的切换所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复