torch.cuda.is_available() 在 colab 中返回 false
Posted
技术标签:
【中文标题】torch.cuda.is_available() 在 colab 中返回 false【英文标题】:torch.cuda.is_available() returns false in colab 【发布时间】:2020-03-27 23:49:45 【问题描述】:我正在尝试在 google colab 中使用 GPU。以下是我的 colab 中安装的 pytorch 和 cuda 版本的详细信息。
Torch 1.3.1 CUDA 10.1.243
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2018 NVIDIA Corporation
Built on Sat_Aug_25_21:08:01_CDT_2018
Cuda compilation tools, release 10.0, V10.0.130
我对在 pytorch 模型上使用 GPU 进行迁移学习非常陌生。我的 torch.cuda.is_available() 返回 false,我无法使用 GPU。 torch.backends.cudnn.enabled 返回 true。这里可能出了什么问题?
【问题讨论】:
您还需要确保您的 colab 实例中确实有 GPU。 【参考方案1】:(这在 2021 年 1 月有效)
pip install torch==1.7.0+cu101 torchvision==0.6.0+cu101 -f https://download.pytorch.org/whl/torch_stable.html
用我的参数:
!nvcc --version
# nvcc: NVIDIA (R) Cuda compiler driver
# Copyright (c) 2005-2019 NVIDIA Corporation
# Built on Sun_Jul_28_19:07:16_PDT_2019
# Cuda compilation tools, release 10.1, V10.1.243
【讨论】:
【参考方案2】:万一其他人来到这里并犯了同样的错误:
如果您尝试检查 GPU 是否可用并且您这样做了:
if torch.cuda.is_available:
print('GPU available')
else:
print('Please set GPU via Edit -> Notebook Settings.')
GPU 似乎总是可用的。请注意,您需要使用torch.cuda.is_available()
而不是torch.cuda.is_available
。
【讨论】:
【参考方案3】:确保您的硬件加速器设置为 GPU。
Runtime > Change runtime type > Hardware Accelerator
【讨论】:
【参考方案4】:使用上述所有版本,我不必将我的 CUDA 降级到 10.0。更新后我重新启动了我的 colab,将我的运行机器设置回 CPU,我只需将其改回 GPU。
【讨论】:
【参考方案5】:临时修复可能是尝试 Cuda 10.0 为 explained in here。
类似这样的:
conda install pytorch torchvision cudatoolkit=10.0 -c pytorch
在未来的版本中,这可能会起作用。
【讨论】:
以上是关于torch.cuda.is_available() 在 colab 中返回 false的主要内容,如果未能解决你的问题,请参考以下文章
FAQP3. 为什么 torch.cuda.is_available() 是 False
torch.cuda.is_available() OSError: [WinError 126]
torch.cuda.is_available() 返回 true,但火炬模型继续在 CPU 上进行训练 [关闭]
!避雷:print(torch.cuda.is_available())返回False
带有 CUDA 和 Nvidia 卡的 PyTorch:RuntimeError:CUDA 错误:所有支持 CUDA 的设备都忙或不可用,但 torch.cuda.is_available() 为 T
RuntimeError: Attempting to deserialize object on a CUDA device but torch.cuda.is_available() is Fal