我使用以下代码将torch.Tensor转换为torch.cuda.Tensor
import torch
import numpy as np
a = np.random.randn(1, 1, 2, 3)
t2 = torch.tensor(a)
t2 = t2.cuda()
t3 = torch.tensor(a, device=torch.device('cuda'))
print(type(t3), t3.device, type(t2), t2.device)输出为<class 'torch.Tensor'> cuda:0 <class 'torch.Tensor'> cuda:0
我想这门课是“手电筒”。我不知道为什么会这样。我的torch版本为1.6.0,相应的cuda版本为10.2
发布于 2022-02-23 03:53:31
这是因为在torch.cuda.Tensor 1.6.0中没有像PyTorch这样的类。
t3.device和t2.device在print(type(t3), t3.device, type(t2), t2.device)中打印cuda:0,这意味着您的张量已经在GPU上了。
https://stackoverflow.com/questions/71231008
复制相似问题