丿網灬樂罷※ 2024-06-24 22:28 采纳率: 0%
浏览 1

完整的系统Cuda和虚拟环境中安装的cudatoolkit在跑机器学习的实验时有什么区别?

今天再装虚拟环境的时候遇到了一个问题,是在自己建立的虚拟环境中安装好了cudatoolkit和cudnn文件,也测试过了。如下图:

img


但是当我运行代码(安装ROIAlign)时会报错如下图:

img


我只给电脑装了驱动,并没有在系统上安装cuda,但是我看网上的经验帖和博客大多是介绍应该不需要在系统中安装完整的cuda就应该可以运行程序,所以我尝试将anaconda中的cudatoolkit作为环境变量添加进去,结果又会显示报错cudatoolkit/bin中没有nvcc文件,我在anaconda中的cudatoolkit/bin文件夹下也确实没找到nvcc文件,为什么anaconda中装的这个cudatoolkit没有nvcc网上的博客也说也可以直接进行试验呢?换句话说我如果就不想装完整的cuda,那我的环境变量添加anaconda中的cudatoolkit文件可以吗?想问问大家问题具体出在哪?

  • 写回答

2条回答 默认 最新

  • 阿里嘎多学长 2024-06-24 22:29
    关注

    以下内容由CHATGPT及阿里嘎多学长共同生成、有用望采纳:


    看起来你遇到了一些配置CUDA环境的问题,尤其是在虚拟环境中。首先,让我们来解答你的疑问:

    1. 为什么在虚拟环境中安装的cudatoolkit没有包含nvcc文件? nvcc 是 NVIDIA CUDA 编译器,通常用于编译 CUDA 代码。Anaconda 提供的 cudatoolkit 包主要是为了支持 Python 等高级语言的库,如 PyTorch 和 TensorFlow,它们使用预编译的二进制文件,因此不需要 nvcc 来编译。这就是为什么你找不到 nvcc 的原因。

    2. 我是否可以直接将anaconda中的cudatoolkit路径添加到环境变量中,而不需要在系统上安装完整的CUDA? 理论上,如果你使用的是像 PyTorch 这样的高级语言库,它们已经与 CUDA 集成,不需要 nvcc 来编译,你只需要确保 cudatoolkit 的路径被正确添加到环境变量中。但是,有些库或工具可能需要 CUDA_HOME 环境变量指向 CUDA 的安装目录,即使不使用 nvcc

    3. 如果不安装完整的CUDA,我应该如何正确配置环境变量来运行机器学习实验?

      • 确保 cudatoolkitcudnn 已经安装在你的虚拟环境中。
      • 设置 LD_LIBRARY_PATH 环境变量,以包含 cudatoolkitlib64lib 目录。例如:
        export LD_LIBRARY_PATH=/path/to/anaconda3/envs/yourenv/lib:$LD_LIBRARY_PATH
        
      • 对于 CUDA_HOME 环境变量,如果你的应用程序或库需要它,你可以手动设置它指向 cudatoolkit 的安装目录。例如:
        export CUDA_HOME=/path/to/anaconda3/envs/yourenv
        
      • 确保你的 Python 环境使用的是正确的 cudatoolkit 版本。

    关于你遇到的错误,EnvironmentError: CUDA_HOME environment variable is not set.,这通常是因为你的应用程序或库需要这个环境变量,但是没有找到。你可以尝试手动设置它,如上所述。

    最后,这里有一些可能有用的参考链接:

    希望这些信息能帮助你解决问题。如果还有其他疑问或需要进一步的帮助,请随时告诉我。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 6月24日

悬赏问题

  • ¥100 关于python拓展屏使用pyautogui.screenshot无法截图的问题
  • ¥15 有偿求答 无导出权限怎么快速导出企业微信微文档
  • ¥15 求解答,怎么数码管中这么加入闹钟或者传感器,这应该怎么加入相应的代码
  • ¥15 scottplot5
  • ¥30 想问问这个建模怎么编程没有思路
  • ¥15 关于imageENview(ImageEN)中新建图层并根据鼠标位置添加图标
  • ¥100 用两台电脑局域联网进行MT5的EA参数优化,但是连接不上,日志提示:
  • ¥15 FastAPI报错: AsyncSession不是有效Pydantic类型
  • ¥50 这Mac系统提示虚拟内存不足,怎么解决
  • ¥15 Rs232电路无法收发数据,求帮助