Nvidia Cudatoolkit 与 Conda Cudatoolkit

Raj*_*tta 21 python anaconda conda tensorflow

到目前为止,我一直在使用Tensorflow-GPU,方法是使用pip和 Cuda 相关软件以及来自Nvidia 网站的Nvidia 软件/驱动程序安装它。最近,我发现 usingconda install tensorflow-gpu还安装了cudatoolkitcudnn

那么,这些(由 conda 提供的)与我从 Nvidia 网站下载的那些有什么不同?

在我的第一个(以前的)环境中,conda list显示我只安装了 TensorFlow(来自 PyPi)而没有安装 cudnn/cudatoolkit,但仍然一切正常。 这是我使用 pip 安装 Tensorflow-GPU 的基本环境

此外,在我跑了一个新的环境conda install tensorflow-gpuconda list给我tensorflow-GPU已经与一起安装cudatoolkitcudnn蟒蛇。而且在这种环境下,一切正常。这是我使用 conda 安装 tensorflow-gpu 的新环境

那么这是否意味着,只有在我使用 pip 安装 TensorFlow时才需要从 Nvidia 的网站下载和安装 Cuda ?

Wil*_*ons 27

如果使用 anaconda 安装 tensorflow-gpu,是的,它将在与 tensorflow-gpu 相同的 conda 环境中为您安装 cuda 和 cudnn。您只需要自己安装最新的 nvidia 驱动程序(以便它适用于最新的 CUDA 级别和您使用的所有较旧的 CUDA 级别。)

这比 pip install tensorflow-gpu 方法有很多优点:

  1. Anaconda 将始终安装 TensorFlow 代码编译使用的 CUDA 和 CuDNN 版本。
  2. 您可以拥有多个具有不同级别 TensorFlow、CUDA 和 CuDNN 的 conda 环境,只需使用 conda activate 即可在它们之间切换。
  3. 您不必在系统范围内手动安装 CUDA 和 cuDNN。

与 pip install tensorflow-gpu 相比,缺点是最新版本的 tensorflow 会在 Anaconda 能够更新 conda 配方并发布其最新 TensorFlow 版本的构建之前几周被添加到 pypi。

  • Anaconda 应忽略 conda 环境之外的任何 CUDA 版本。应该是找不到的。 (4认同)
  • 这是否意味着我们在使用“tensorflow-gpu”之前不再需要手动安装 CUDA 和 cuDNN(因为依赖项已由“conda”处理)。 (4认同)
  • 我不认为 CUDA 的安装方式会影响性能。无论哪个版本提供最新版本的 CUDA,我都希望拥有最佳性能。 (3认同)
  • 您知道如果主机操作系统上安装了 CUDA 会出现什么问题吗?(在 conda 环境之外) (2认同)
  • 我在 conda 之外安装 CUDA 时从未遇到过错误。@william 在您建议的两种方法之间,哪种可以提供更好的性能? (2认同)

小智 9

Nvidia 现在有conda 的官方频道。软件包名称为 nvidia/cuda。我更喜欢 conda,因为它可以更轻松地管理不同的 cuda 环境。

我发现缺少的conda-forge/cudatoolkit是 nvcc,我猜想其他一些用于编译但不运行环境的实用程序也丢失了。

这篇文章conda-forge/cudatoolkit-dev会安装nvcc,但我没有尝试过。