以前跑一个古董CUDA10项目出现的问题,该报错是因为torch.inverse的实现在1.10后面发生变化导致的,解决方法要么是将使用torch.linalg模块或torch.inverse语句中变量移到CPU,即torch.inverse(data)改为:
device = data.device() data=data.cpu() data=torch.inverse(data) data = data.to(device)
要么用更旧的pytorch版本例如 PyTorch (1.10.0+cu111)。如果没有别的问题(比如用了RTX50等新平台),建议出现此问题优先回退旧版本torch+CUDA版本,或者使用docker。
原始解决方法参见:
报错torch._C._LinAlgError: cusolver error: CUSOLVER_STATUS_EXECUTION_FAILED-CSDN博客
虽然能解决,但是这种古董项目还是早点完结早点超度了罢(