簡體   English   中英

為什么 Anaconda 為帶 GPU 和不帶 GPU 的 Tensorflow 提供單獨的軟件包,我應該使用 conda 還是 pip?

[英]Why Anaconda has separate packages for Tensorflow with and without GPU, and should I use conda or pip?

Anaconda為 Tensorflow 提供了不同的包,有和沒有 GPU 支持。

特別是,要使用 GPU 安裝 Tensorflow,您應該運行:

conda install tensorflow-gpu

對於非 GPU 版本,您應該安裝:

conda install tensorflow

通過檢查安裝包的版本,conda 安裝了 Tensorflow 2.1 版。

但截至今天,Tensorflow 的最新版本是 2.3。 此外,正如在Tensorflow 官方文檔中所見,最新版本可以安裝

pip install tensorflow

文檔中說這個包對 Tensorflow 的 CPU 和 GPU 版本都很好。 此外,文檔指出 CPU 和 GPU 的包對於“1.15 及更早版本”是不同的。

  1. 為什么 Anaconda 在兩個不同的包中提供 2.1,因為對於任何大於 1.15 的版本,包都應該是相同的?

  2. 我應該安裝哪一個,pip 版本還是 conda 版本? Anaconda 博客中的一篇文章指出 conda 提供的版本更快,但文章較舊(2018 年),並引用了舊版本的 Tensorflow(1.10)

通過檢查安裝包的版本,conda 安裝了 Tensorflow 2.1 版。 但截至今天,Tensorflow 的最新版本是 2.3。 此外

那只是因為您(可能?)在 Windows 上。 正如您在此處看到的 tensorflow可從conda默認通道以 2.3 的形式使用,但目前僅在 linux 上可用。

鏈接的網站上也說明了原因(重點是我的):

Anaconda 為我們努力使用出色的 TensorFlow 庫提供更簡單、更快的體驗而感到自豪。 添加對生產中使用的許多平台的支持並確保加速代碼仍然穩定且數學上正確需要花費大量時間和精力。 因此,我們的 TensorFlow 軟件包可能無法與官方 TensorFlow 輪子同時使用 但是,我們致力於維護我們的 TensorFlow 軟件包,並努力盡快提供更新。

簡而言之:Anaconda 團隊正在針對 intel mkl 庫創建 tf 的自定義構建,以加快 CPU 上的計算。 早些時候在同一網站上,他們還提到他們為不同的 cuda 版本創建了構建。

為什么 Anaconda 在兩個不同的包中提供 2.1,因為對於任何大於 1.15 的版本,包都應該是相同的?

tensorflow-gpu包只是一個元包,即它僅用於安裝具有不同依賴項的不同構建的tensorflow (也使您能夠安裝不同的 cuda 版本)。 官方版本只允許 tensorflow 版本和 cuda 的組合

我應該安裝哪一個,pip 版本還是 conda 版本? Anaconda 博客中的一篇文章指出 conda 提供的版本更快,但文章較舊(2018 年),並引用了舊版本的 Tensorflow(1.10)

閱讀上述文章,加速與針對 intel mkl 庫的構建有關,該庫可加速 CPU 上的計算。 鑒於您的設置,你只能得到tensorflow使用時安裝2.1 conda ,你需要問自己,如果你依靠最新tensorflow版本,如果你不需要加速CPU代碼。 使用pip安裝最新的 tensorflow 通常沒有問題。 只需確保為所述 tensorflow 版本創建一個新環境,並且僅在該環境中使用pip安裝/更新 tensorflow 或其任何依賴項。 一般建議不要過多地混合condapip安裝,因為一個可能會破壞另一個(因為它們使用不同的方法來解決依賴關系),但是使用單獨的 env 時應該沒問題

如果您使用的是 Anaconda,那么您可以使用 conda 來安裝 tensorflow。 對於 cpu 版本,輸入

conda install tensorflow
for the gpu version enter
conda install tensorflow-gpu.

如果您使用的是 Windows,它將安裝 2.1.0 版、cuda 工具包 10.1.243 版和 cudnn 7.6.5 版。 注意 conda 只能在 Windows 操作系統上安裝最高版本 2.1.0 的 tensorflow。 如果您想要 tensorflow 2.2.0 或 2.3.0,請在安裝 2.1 后使用 pip 使用 pip 安裝它。 cuda 工具包和 cudnn 適用於 2.2 和 2.3 版。 另一件事。 使用 python3.7 而不是 3.8。 顯然,當您使用 conda 安裝 tensorflow 時,它不適用於 3.8。 如果您使用 pip 安裝 tensorflow 2.1 或更高版本,它包括 cpu 和 gpu 版本,但是您必須通過手動過程來安裝 Cuda Toolkit 和 cudnn。 這包括從 NVIDIA 下載文件。 您還必須更改 PATH 環境變量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM