Dawnk_ 2024-03-09 17:22 采纳率: 25%
浏览 32

命令行CUDA不可用,但Jupyter就可以

这个服务器的命令行有问题,命令行的(torch.cuda.is_available())永远输出false,但是在Jupyter里(torch.cuda.is_available())就能输出True,所以我现在只能在Jupyter里运行程序,有没有什么解决方法?
检查过很多遍了,pytorch的版本和CUDA版本都是符合的,环境变量也都设置了

img

img

img

  • 写回答

3条回答 默认 最新

  • GISer Liu 2024-03-09 17:59
    关注

    该回答引用自GPT-3.5,由博主GISer Liu编写:

    针对您的问题,首先需要明确的是,Jupyter Notebook 和命令行所使用的环境可能存在差异,导致 CUDA
    可用性判断结果不同。以下是解决此问题的一般思路和可能的解决方案:

    问题分析

    1. 环境差异: Jupyter Notebook 和命令行可能使用的 Python 解释器环境不同,可能导致 CUDA 可用性判断结果不同。
    2. 环境变量配置: 确保在命令行中设置的环境变量与 Jupyter Notebook 中的环境变量一致。
    3. CUDA 和 PyTorch 版本匹配: 确保安装的 PyTorch 版本与 CUDA 版本兼容,并且正确配置。

      解决方案

      根据上述问题分析,以下是可能的解决方案:
    4. 确认环境配置: 确保在命令行和 Jupyter Notebook 中使用相同的 Python 解释器环境。可以使用 sys.executable 查看 Python 解释器路径,并确保两者一致。
    5. 检查环境变量: 确保在命令行中设置的环境变量与 Jupyter Notebook 中的环境变量一致。特别是 PATHLD_LIBRARY_PATH 等 CUDA 相关环境变量。
    6. 重新安装 CUDA 和 PyTorch: 如果确认环境变量配置无误,可以尝试重新安装 CUDA 和 PyTorch,确保版本匹配且安装正确。

      代码示例

      如果您需要检查环境变量配置,可以使用以下代码示例:
      pythonCopy code
      import os
      # 查看 CUDA 相关环境变量
      print("CUDA 环境变量:")
      print(os.environ.get("CUDA_HOME"))
      print(os.environ.get("LD_LIBRARY_PATH"))
      # 查看其他环境变量,如 PATH
      print("\n其他环境变量:")
      print(os.environ.get("PATH"))
      

      注意事项

    • 确保在重新配置环境变量或重新安装 CUDA 和 PyTorch 之前备份重要数据,以防不必要的损失。
    • 如果问题仍然存在,可能需要考虑其他因素,如系统配置或软件冲突等。
      通过以上步骤,您应该能够解决命令行中 CUDA 不可用的问题,并确保与 Jupyter Notebook
      中一致。如果问题仍然存在,请提供更多详细信息,以便进一步帮助解决。

    如果该回答解决了您的问题,请采纳!如果没有,请参考以下方案进行修订

    用户答题指南

    评论

报告相同问题?

问题事件

  • 创建了问题 3月9日