TensorFlow GPU 支援需要各種驅動程式和程式庫。為簡化安裝作業並避免發生程式庫衝突,建議你使用支援 GPU 的 TensorFlow Docker 映像檔 (僅限 Linux)。這樣只需要 NVIDIA® GPU 驅動程式即可完成設定。
下列安裝操作說明適用於最新版本的 TensorFlow。請參閱 CUDA® 和 CuDNN 版本經過測試的建構設定,瞭解如何與舊版 TensorFlow 搭配使用。
pip 套件
請參閱 pip 安裝指南,瞭解可用的套件、系統需求和相關操作說明。TensorFlow pip
套件包含採用 CUDA® 技術的顯示卡 GPU 支援:
pip install tensorflow
本指南涵蓋最新 TensorFlow 穩定版的 GPU 支援和安裝步驟。
舊版 TensorFlow
1.15 以下版本的 CPU 和 GPU 套件各自獨立:
pip install tensorflow==1.15 # CPU
pip install tensorflow-gpu==1.15 # GPU
硬體需求
支援採用以下 GPU 的裝置:
- 採用 CUDA® 架構 3.5、5.0、6.0、7.0、7.5、8.0 以上版本的 NVIDIA® GPU 顯示卡。請參閱採用 CUDA® 技術的 GPU 顯示卡清單。
- 如要瞭解哪些 GPU 採用不支援的 CUDA® 架構、如何避免透過 PTX 進行 JIT 編譯作業,以及如何使用不同版本的 NVIDIA® 程式庫,請參閱從原始碼開始建構 (適用於 Linux) 指南。
- 除了最新支援的 CUDA® 架構之外,套件不包含任何 PTX 程式碼。因此,如果設定了
CUDA_FORCE_PTX_JIT=1
,就無法在舊版 GPU 上載入 TensorFlow。詳情請參閱應用程式相容性。
軟體需求
您的系統上必須安裝下列 NVIDIA® 軟體:
- NVIDIA® GPU 驅動程式:CUDA® 11.2 需要 450.80.02 以上版本。
- CUDA® Toolkit: TensorFlow 支援 CUDA® 11.2 (TensorFlow 2.5.0 以上版本)
- CUDA® Toolkit 隨附 CUPTI。
- cuDNN SDK 8.1.0 (cuDNN 版本)。
- (選用) TensorRT 6.0 可改善某些模型的推論延遲情況和總處理量。
Linux 設定
只要按照下方的 apt
指示操作,就能以最簡單的方式在 Ubuntu 上安裝必要的 NVIDIA 軟體。不過,如果您是從原始碼開始建構 TensorFlow,請手動安裝上述所需軟體,並考慮使用 -devel
TensorFlow Docker 映像檔做為基礎。
請安裝 CUDA® Toolkit 隨附的 CUPTI,並將其安裝目錄附加到 $LD_LIBRARY_PATH
環境變數中:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/extras/CUPTI/lib64
使用 apt 安裝 CUDA
本節說明如何在 Ubuntu 16.04 和 18.04 上安裝 CUDA® 11 (TensorFlow 2.4.0 以上版本)。以下操作說明可能也適用於其他以 Debian 為基礎的發行版本。
Ubuntu 18.04 (CUDA 11.0)
# Add NVIDIA package repositorieswget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pin
sudo mv cuda-ubuntu1804.pin /etc/apt/preferences.d/cuda-repository-pin-600
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/ /"
sudo apt-get update
wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64/nvidia-machine-learning-repo-ubuntu1804_1.0.0-1_amd64.deb
sudo apt install ./nvidia-machine-learning-repo-ubuntu1804_1.0.0-1_amd64.deb
sudo apt-get update
wget https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64/libnvinfer7_7.1.3-1+cuda11.0_amd64.deb
sudo apt install ./libnvinfer7_7.1.3-1+cuda11.0_amd64.deb
sudo apt-get update
# Install development and runtime libraries (~4GB)sudo apt-get install --no-install-recommends \ cuda-11-0 \ libcudnn8=8.0.4.30-1+cuda11.0 \ libcudnn8-dev=8.0.4.30-1+cuda11.0
# Reboot. Check that GPUs are visible using the command: nvidia-smi # Install TensorRT. Requires that libcudnn8 is installed above.sudo apt-get install -y --no-install-recommends libnvinfer7=7.1.3-1+cuda11.0 \ libnvinfer-dev=7.1.3-1+cuda11.0 \ libnvinfer-plugin7=7.1.3-1+cuda11.0
Ubuntu 16.04 (CUDA 11.0)
# Add NVIDIA package repositories # Add HTTPS support for apt-keysudo apt-get install gnupg-curl
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-ubuntu1604.pin
sudo mv cuda-ubuntu1604.pin /etc/apt/preferences.d/cuda-repository-pin-600
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/ /"
sudo apt-get update
wget https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64/nvidia-machine-learning-repo-ubuntu1604_1.0.0-1_amd64.deb
sudo apt install ./nvidia-machine-learning-repo-ubuntu1604_1.0.0-1_amd64.deb
sudo apt-get update
wget https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64/libnvinfer7_7.1.3-1+cuda11.0_amd64.deb
sudo apt install ./libnvinfer7_7.1.3-1+cuda11.0_amd64.deb
sudo apt-get update
# Install development and runtime libraries (~4GB)sudo apt-get install --no-install-recommends \ cuda-11-0 \ libcudnn8=8.0.4.30-1+cuda11.0 \ libcudnn8-dev=8.0.4.30-1+cuda11.0
# Reboot. Check that GPUs are visible using the command: nvidia-smi # Install TensorRT. Requires that libcudnn7 is installed above.sudo apt-get install -y --no-install-recommends \ libnvinfer7=7.1.3-1+cuda11.0 \ libnvinfer-dev=7.1.3-1+cuda11.0 \ libnvinfer-plugin7=7.1.3-1+cuda11.0 \ libnvinfer-plugin-dev=7.1.3-1+cuda11.0
Windows 設定
請參閱上述硬體需求和軟體需求,以及適用於 Windows 的 CUDA® 安裝指南。
確認您已安裝符合上述版本的 NVIDIA 軟體套件。請特別注意,如果沒有 cuDNN64_8.dll
檔案,TensorFlow 就不會載入。如要使用其他版本,請參閱從原始碼開始建構 (適用於 Windows) 指南。
請將 CUDA®、CUPTI 和 cuDNN 安裝目錄新增至 %PATH%
環境變數中。舉例來說,如果 CUDA® Toolkit 已安裝至 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0
,且 cuDNN 已安裝至 C:\tools\cuda
,請更新 %PATH%
以符合:
SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\bin;%PATH%
SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\extras\CUPTI\lib64;%PATH%
SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\include;%PATH%
SET PATH=C:\tools\cuda\bin;%PATH%