溫馨提示×

Ubuntu上PyTorch的GPU加速如何實現

小樊
47
2025-06-29 19:07:16
欄目: 智能運維

在Ubuntu上實現PyTorch的GPU加速,需要確保系統具備以下條件:

  1. NVIDIA GPU:你的計算機需要配備NVIDIA GPU。
  2. NVIDIA驅動程序:安裝與你的GPU型號兼容的NVIDIA驅動程序。
  3. CUDA Toolkit:安裝與你的GPU和驅動程序兼容的CUDA Toolkit。
  4. cuDNN庫:安裝與CUDA版本兼容的cuDNN庫。
  5. 支持GPU的PyTorch版本:安裝支持GPU的PyTorch版本。

以下是詳細的安裝步驟:

1. 安裝NVIDIA驅動程序

首先,你需要安裝適合你的GPU型號的NVIDIA驅動程序??梢酝ㄟ^以下命令來添加NVIDIA官方驅動程序的PPA并安裝:

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
sudo apt install nvidia-driver-<version>

<version> 替換為適合你GPU的驅動版本號。安裝完成后,重啟計算機。

2. 安裝CUDA Toolkit

訪問NVIDIA CUDA Toolkit下載頁面,選擇適合你的Ubuntu版本的CUDA Toolkit進行下載。然后按照官方指南進行安裝。例如,使用以下命令安裝CUDA Toolkit 11.7:

wget https://developer.download.nvidia.com/compute/cuda/11.7.0/local_installers/cuda_11.7.0_515.43.04_linux.runsudo sh cuda_11.7.0_515.43.04_linux.run

在安裝過程中,確保選擇安裝CUDA Toolkit以及相關的驅動程序。

3. 安裝cuDNN庫

訪問NVIDIA cuDNN頁面,下載與你的CUDA版本兼容的cuDNN庫。下載后,解壓文件并將文件復制到CUDA目錄中:

tar -xzvf cudnn-11.7-linux-x64-v8.4.1.50.tgzsudo cp cuda/include/cudnn*.h /usr/local/cuda/includesudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*

確保將 cudnn-11.7-linux-x64-v8.4.1.50.tgz 替換為你下載的文件名。

4. 設置環境變量

為了讓系統能夠找到CUDA和cuDNN,你需要設置一些環境變量。將以下內容添加到你的 ~/.bashrc 文件中:

export PATH=/usr/local/cuda-11.7/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.7/lib64:$LD_LIBRARY_PATH

然后運行以下命令使更改生效:

source ~/.bashrc

5. 安裝支持GPU的PyTorch

你可以使用pip或conda來安裝支持GPU的PyTorch。訪問PyTorch官方網站,根據你的系統和CUDA版本選擇合適的安裝命令。例如,如果你使用的是CUDA 11.7,可以使用以下命令安裝PyTorch:

pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu117

或者使用conda:

conda install pytorch torchvision torchaudio cudatoolkit=11.7 -c pytorch

6. 驗證安裝

安裝完成后,你可以通過運行以下Python代碼來驗證PyTorch是否能夠檢測到GPU:

import torch
print(torch.cuda.is_available())
print(torch.cuda.current_device())
print(torch.cuda.get_device_name(torch.cuda.current_device()))

如果輸出顯示GPU可用,并且顯示了正確的GPU名稱,那么恭喜你,你已經成功在Ubuntu上使用GPU加速PyTorch了。

請注意,具體的安裝步驟和版本可能會隨著軟件和驅動的更新而變化,建議在安裝前查閱最新的官方文檔或教程,以確保兼容性和穩定性。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女