torch报错解决Expected all tensors to be on the same device, but found at least two devices, cuda:0andcpu

stress_error_map=torch.add(stress_error_map,torch.div(torch.abs(stress-stresstarget),stresstarget))

出错的代码位置在这里,原因就如报错提示,你要么全用cuda类型的,要么全用cpu类型的(之前一直有误区以为gpu的tensor就不能加减乘除了,但是实际是可以的,原因是因为参与算式的tensor类型不一致):
我的stress_error_map是cpu的,其他全是gpu的,因此就不行。
在我将stress_error_map改为gpu以后报错消失了。
之后又利用https://blog.csdn.net/m0_46653437/article/details/111915713
关闭了梯度。

你可能感兴趣的:(torch)