TensorFlow GPU 支持需要各種驅動程序和庫。爲了簡化安裝並避免庫衝突,建議您使用支持 GPU 的 TensorFlow Docker 映像(僅限 Linux)。此設置僅需要 NVIDIA® GPU 驅動程序。
這些安裝說明適用於最新版 TensorFlow。要了解可用於舊版 TensorFlow 的 CUDA 和 cuDNN 版本,請參閱經過測試的編譯配置。
pip 軟件包
要了解可用的軟件包、系統要求和說明,請參閱 pip 安裝指南。要使用 pip
安裝支持 GPU 的 TensorFlow 軟件包,請選擇穩定版或開發軟件包:
pip install tensorflow # stable
pip install tf-nightly # preview
舊版 TensorFlow
對於 1.15 及更早版本,CPU 和 GPU 軟件包是分開的:
pip install tensorflow==1.15 # CPU
pip install tensorflow-gpu==1.15 # GPU
硬件要求
支持以下帶有 GPU 的設備:
- CUDA® 計算能力爲 3.5 或更高的 NVIDIA® GPU 卡。請參閱支持 CUDA 的 GPU 卡列表。
軟件要求
必須在系統中安裝以下 NVIDIA® 軟件:
- NVIDIA® GPU 驅動程序:CUDA 10.1 需要 418.x 或更高版本。
- CUDA® 工具包:TensorFlow 支持 CUDA 10.1(TensorFlow 2.1.0 及更高版本)
- CUDA 工具包附帶的 CUPTI。
- cuDNN SDK(7.6 及更高版本)
- (可選)TensorRT 6.0,可縮短在某些模型上進行推斷的延遲並提高吞吐量。
Linux 設置
要在 Ubuntu 上安裝所需的 NVIDIA 軟件,最簡單的方法是使用下面的 apt
指令。但是,如果從源代碼構建 TensorFlow,請手動安裝上述軟件要求中列出的軟件,並考慮以 -devel
TensorFlow Docker 映像作爲基礎。
安裝 CUDA® 工具包附帶的 CUPTI,並將其安裝目錄附加到 $LD_LIBRARY_PATH
環境變量中:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/extras/CUPTI/lib64
對於 CUDA 計算能力爲 3.0 的 GPU,或不同版本的 NVIDIA 庫,請參閱在 Linux 下從源代碼構建指南。
使用 apt 安裝 CUDA
本部分將介紹如何針對 Ubuntu 16.04 和 18.04 安裝 CUDA 10(TensorFlow 1.13.0 及更高版本)和 CUDA 9。這些說明可能適用於其他 Debian 系發行版。
注意:安全啓動會讓 NVIDIA 驅動程序的安裝過程變複雜,並且不在這些說明的討論範圍內。
Ubuntu 18.04 (CUDA 10.1)
# Add NVIDIA package repositorieswget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-repo-ubuntu1804_10.1.243-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu1804_10.1.243-1_amd64.deb
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub
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
# Install NVIDIA driversudo apt-get install --no-install-recommends nvidia-driver-418
# Reboot. Check that GPUs are visible using the command: nvidia-smi # Install development and runtime libraries (~4GB)sudo apt-get install --no-install-recommends \ cuda-10-1 \ libcudnn7=7.6.4.38-1+cuda10.1 \ libcudnn7-dev=7.6.4.38-1+cuda10.1
# Install TensorRT. Requires that libcudnn7 is installed above.sudo apt-get install -y --no-install-recommends libnvinfer6=6.0.1-1+cuda10.1 \ libnvinfer-dev=6.0.1-1+cuda10.1 \ libnvinfer-plugin6=6.0.1-1+cuda10.1
Ubuntu 16.04 (CUDA 10.1)
# 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-repo-ubuntu1604_10.1.243-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu1604_10.1.243-1_amd64.deb
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
sudo apt-get update
wget http://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
# Install NVIDIA driver # Issue with driver install requires creating /usr/lib/nvidiasudo mkdir /usr/lib/nvidia
sudo apt-get install --no-install-recommends nvidia-418
# Reboot. Check that GPUs are visible using the command: nvidia-smi # Install development and runtime libraries (~4GB)sudo apt-get install --no-install-recommends \ cuda-10-1 \ libcudnn7=7.6.4.38-1+cuda10.1 \ libcudnn7-dev=7.6.4.38-1+cuda10.1
# Install TensorRT. Requires that libcudnn7 is installed above.sudo apt-get install -y --no-install-recommends \ libnvinfer6=6.0.1-1+cuda10.1 \ libnvinfer-dev=6.0.1-1+cuda10.1 \ libnvinfer-plugin6=6.0.1-1+cuda10.1
Ubuntu 16.04(CUDA 9.0,TensorFlow 1.13.0 以下版本)
# Add NVIDIA package repositorysudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_9.1.85-1_amd64.deb
sudo apt install ./cuda-repo-ubuntu1604_9.1.85-1_amd64.deb
wget http://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 update
# Install the NVIDIA driver # Issue with driver install requires creating /usr/lib/nvidiasudo mkdir /usr/lib/nvidia
sudo apt-get install --no-install-recommends nvidia-410
# Reboot. Check that GPUs are visible using the command: nvidia-smi # Install CUDA and tools. Include optional NCCL 2.xsudo apt install cuda9.0 cuda-cublas-9-0 cuda-cufft-9-0 cuda-curand-9-0 \ cuda-cusolver-9-0 cuda-cusparse-9-0 libcudnn7=7.2.1.38-1+cuda9.0 \ libnccl2=2.2.13-1+cuda9.0 cuda-command-line-tools-9-0
# Optional: Install the TensorRT runtime (must be after CUDA install)sudo apt update
sudo apt install libnvinfer4=4.1.2-1+cuda9.0
Windows 設置
請參閱上面列出的硬件要求和軟件要求,並閱讀適用於 Windows 的 CUDA® 安裝指南。
確保安裝的 NVIDIA 軟件包與上面列出的版本一致。特別是,如果沒有 cuDNN64_7.dll
文件,TensorFlow 將無法加載。要使用其他版本,請參閱在 Windows 下從源代碼構建指南。
將 CUDA、CUPTI 和 cuDNN 安裝目錄添加到 %PATH%
環境變量中。例如,如果 CUDA 工具包安裝到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1
,同時 cuDNN 安裝到 C:\tools\cuda
,請更新 %PATH%
以匹配路徑:
SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin;%PATH%
SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\extras\CUPTI\libx64;%PATH%
SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;%PATH%
SET PATH=C:\tools\cuda\bin;%PATH%