S1XyG0D 2025-05-11 23:20 采纳率: 0%
浏览 61

torch.cuda单独使用为true,但是在调用中会出现torch.cuda.is_available() is False

img


左边为单独运行,后面为函数中调用报错。。
主机为windows,含有GPU.现在安装了pytorch12.9, cuda安装了是12.9版本,cuda toolkit安装12.9版本,在python中运行命令可以检测到cuda是存在的,但是在运行train.py代码后报错说没有可用的cuda

  • 写回答

4条回答 默认 最新

  • 阿里嘎多学长 2025-05-11 23:31
    关注

    阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程

    问题解答

    你遇到的问题是,torch.cuda单独使用为true,但是在调用中会出现torch.cuda.is_available() is False。这个问题可能是由于 CUDA_VISIBLE_DEVICES 环境变量的原因。

    在 Windows 上,CUDA_VISIBLE_DEVICES 环境变量可以在命令行中设置,可以使用以下命令:

    set CUDA_VISIBLE_DEVICES=0
    

    其中,0 是 GPU 的索引号,可以根据你的 GPU 数量和索引号进行设置。

    在 Python 中,可以使用以下代码来设置 CUDA_VISIBLE_DEVICES:

    import os
    os.environ['CUDA_VISIBLE_DEVICES'] = '0'
    

    如果你已经设置了 CUDA_VISIBLE_DEVICES,但仍然出现问题,可以尝试以下几点:

    1. 检查 CUDA Toolkit 的安装是否正确。
    2. 检查 PyTorch 的安装是否正确。
    3. 检查 GPU 是否正确地被 detected。
    4. 尝试使用 torch.cuda.device_count() 函数来检查 GPU 的数量。

    如果你仍然无法解决问题,可以提供更多的日志信息和代码,以便我更好地帮助你解决问题。

    评论

报告相同问题?

问题事件

  • 创建了问题 5月11日