如何将 torch.device('cuda' if torch.cuda.is_available() else 'cpu') 编写为完整的 if else 语句?
Posted
技术标签:
【中文标题】如何将 torch.device(\'cuda\' if torch.cuda.is_available() else \'cpu\') 编写为完整的 if else 语句?【英文标题】:How to write torch.device('cuda' if torch.cuda.is_available() else 'cpu') as a full if else statement?如何将 torch.device('cuda' if torch.cuda.is_available() else 'cpu') 编写为完整的 if else 语句? 【发布时间】:2020-11-27 20:02:11 【问题描述】:我是 Pytorch 的初学者,想把这个语句作为一个整体输入 if else 语句:-
torch.device('cuda' if torch.cuda.is_available() else 'cpu')
有人可以帮帮我吗?
【问题讨论】:
【参考方案1】:这里是整个if-else语句的代码:
torch.device('cuda' if torch.cuda.is_available() else 'cpu')
if torch.cuda.is_available():
torch.device('cuda')
else:
torch.device('cpu')
由于您可能想要存储设备以备后用,您可能需要这样的东西:
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
if torch.cuda.is_available():
device = torch.device('cuda')
else:
device = torch.device('cpu')
这是一篇关于 Python 中三元运算符的帖子和讨论:https://***.com/a/2802748/13985765
来自那个帖子:
value_when_true if condition else value_when_false
【讨论】:
以上是关于如何将 torch.device('cuda' if torch.cuda.is_available() else 'cpu') 编写为完整的 if else 语句?的主要内容,如果未能解决你的问题,请参考以下文章
torch.device(‘cuda‘) 与 torch.device(‘cuda:0‘) 的区别简析
torch.device(‘cuda‘) 与 torch.device(‘cuda:0‘) 的区别简析
torch.device(‘cuda‘) 与 torch.device(‘cuda:0‘) 的区别简析
PyTorch:tensor.cuda() 和 tensor.to(torch.device("cuda:0")) 有啥区别?
Input type (torch.FloatTensor) and weight type (torch.cuda.FloatTensor) should be the same
RuntimeError: Attempting to deserialize object on a CUDA device but torch.cuda.is_available() is Fal