在运行代码的时候遇到一个问题打开任务管理器,看到gpu0是核显;gpu1是英伟达显卡。但是在运行
device = torch.device("cuda:1" if torch.cuda.is_available() else "cpu")
时总是报错。
RuntimeError: CUDA error: invalid device ordinal
只有改成gpu0才可以运行。
查看我的cuda是11.2版本(在显卡驱动中看到的),我的pytorch才1.7(应该用cuda10.2(在cmd nvcc -V看到的),其实我也不知道他用的那个cuda) 。
那是不是用的我的英伟达显卡呢
运行下面demo
print("使用gpu数量为:", torch.cuda.device_count())
print(torch.cuda.get_device_name(0))
try:
print(torch.cuda.get_device_name(1))
except:
print("并未使用其他显卡")
可以看到第一行输出1;第二行输出英伟达显卡名(940x)在输出“并未使用其他显卡”
打开任务管理器看到两个gpu都在使用。