问题描述
跳Error:RuntimeError: CuDA error: no kernel image is available for execution on the device
大概率是cuda和torch版本不匹配。
解决方法
运行下列代码测试一下:
import torch
import numpy as np
# 检查torch是否正常
def test4torch():
data = np.array([1,2,3])
data = torch.tensor(data)
device = torch.device('cuda:0')
data = data.to(device)
print(data)
# 检查cuda是否正常
def test4cuda():
print(f"torch.version.cuda: {torch.version.cuda}")
print(f"torch.__version__: {torch.__version__}")
print(f"torch.backends.cudnn.version(): {torch.backends.cudnn.version()}")
print(f"torch.cuda.is_available(): {torch.cuda.is_available()}")
def main():
test4cuda()
test4torch()
print("\nDone.")
if __name__ == "__main__":
main()
一步一步排查,如果都能正常运行就OK了。还可以自行去pytorch的官网检查自己的版本是否合适。