问题
在训练到一定迭代次数之后报错:
RuntimeError: CUDA error: CUBLAS_STATUS_EXECUTION_FAILED when calling cublasSgemm( handle, opa, opb, m, n, k, &alpha, a, lda, b, ldb, &beta, c, ldc)
可能的原因
- shape维度不匹配
- 变量不在同一个device上
- pytorch和cuda版本不匹配
解决方案
在train.py文件的开头加上 os.environ['CUDA_VISIBLE_DEVICES'] = '0'
,并且设置device='cuda'
。
但是有 一个很奇怪的现象:如果不设置可见gpu,而是指定device='cuda:0'
的话,也会报错。
文章出处登录后可见!
已经登录?立即刷新