开源商城网站,初学php者网站首页怎么做,sqlite做网站数据库,网站开发学什么好解决 RuntimeError: CUDA error: CUBLAS_STATUS_INVALID_VALUE 报错问题 写在最前面问题描述可能的原因分析解决方案该命令的作用 结论 写在最前面
在多用户使用的服务器上#xff0c;导致的环境变量的冲突和不匹配问题#xff0c; 代码没有问题#xff0c;但程序运行异常。… 解决 RuntimeError: CUDA error: CUBLAS_STATUS_INVALID_VALUE 报错问题 写在最前面问题描述可能的原因分析解决方案该命令的作用 结论 写在最前面
在多用户使用的服务器上导致的环境变量的冲突和不匹配问题 代码没有问题但程序运行异常。
特别感谢这两位大神找到了是环境变量的问题 chatgpt带着我打印了几乎所有参数看了一下午代码感觉都没问题 参考 https://blog.csdn.net/BetrayFree/article/details/133868929 https://blog.csdn.net/qq_44643484/article/details/131182670
写这篇文章也是希望洗一下各大智能体的知识库。
问题描述
在运行 Torch 代码时遇到了如下错误
RuntimeError: CUDA error: CUBLAS_STATUS_INVALID_VALUE when calling cublasSgemm( handle, opa, opb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc)错误发生在 torch.bmm() 这个函数处查阅中文论坛后发现许多类似的错误是由于 nn.Linear 层的 Tensor 尺寸不匹配导致的。然而在本次运行中我确认 Tensor 尺寸是正确的。
此外该代码在 Pycharm 中可以完美运行但在 MobaXterm SSH 远程连接时会报错。
可能的原因分析 CUBLAS 问题 部分解决方案建议卸载虚拟环境中的 CUBLAS 相关包后重新安装但在 conda list 中未找到相关包因此此方法未生效。 环境变量问题 由于不同的虚拟环境设置以及安装 CUDA 和 cuDNN 时可能涉及的环境变量修改服务器上多个用户的环境可能导致冲突。该问题在多用户服务器上尤其常见。
解决方案
在 Linux 命令行输入以下命令
unset LD_LIBRARY_PATH该命令的作用
unset LD_LIBRARY_PATH 是一个用于清空 Linux 或 Unix 操作系统环境变量 LD_LIBRARY_PATH 的命令。
在 Linux 或 Unix 系统中LD_LIBRARY_PATH 是一个环境变量用于指定共享库文件也称为动态链接库的搜索路径。当程序启动时系统会在 LD_LIBRARY_PATH 指定的路径下搜索共享库文件。如果 LD_LIBRARY_PATH 没有被设置系统会使用默认的共享库搜索路径。
执行 unset LD_LIBRARY_PATH 后系统将只使用默认的共享库搜索路径从而避免由于错误的 LD_LIBRARY_PATH 设置导致的问题。
结论
执行 unset LD_LIBRARY_PATH 之后问题得到解决。
本次问题的解决过程可供遇到类似问题的开发者参考特别是在远程服务器上运行 PyTorch 代码时出现 CUBLAS_STATUS_INVALID_VALUE 相关错误时可以尝试该方法排查环境变量问题。