手把手帶你學 Tensorflow、Pytorch、CUDA、NVIDIA-SMI、cuDNN、Ubuntu、NGC、Docker、NVIDIA-Docker 的安裝與設定教學
作者:TonTon Huang Ph.D.
日期:2020年5月
原文網址:https://blog.twman.org/2020/05/DeepLearning.html
文章概述
本文提供了從零開始建立深度學習開發環境的詳細指南,涵蓋了硬體選擇、作業系統安裝、驅動程式設定、CUDA/cuDNN 安裝、以及 Docker/NVIDIA-Docker 的配置,旨在協助讀者避開常見的安裝與設定陷阱。
主要內容摘要
1. 硬體選擇與升級歷程
- GPU 選擇建議:建議選擇基於 Pascal 架構(如 GTX 1080)以上的 GPU,這樣能更好地滿足深度學習的需求。
- 作者的升級歷程:
- 2016年:GIGABYTE GTX 960 4G ×2
- 2017年:技嘉 GTX1080 XTREME GAMING 8G
- 2018年:NVIDIA TITAN V + TITAN XP
- 2023年:RTX 6000 Ada 48GB ×2 和 A100 80GB ×4
- 2024年:RTX 6000 Ada 48GB ×8 ×2
2. 作業系統與依賴項設定
- Ubuntu 系統選擇:建議使用 Ubuntu 16.04 LTS 或 20.04 LTS,這些版本對 CUDA 和 cuDNN 的支援較好。
- 安裝步驟:
- 預裝驅動程式時,需要先安裝相關依賴(如
dkms
、build-essential
等)。 - 設定合適的版本以確保驅動程式與硬體的兼容性。
- 預裝驅動程式時,需要先安裝相關依賴(如
- USB Wi-Fi 驅動問題:Ubuntu 上的 USB Wi-Fi 驅動可能會遇到相容性問題,這時需要手動編譯驅動或選擇其他支援的硬體。
3. GPU 驅動與 CUDA/cuDNN 安裝
- 驅動安裝建議:
- 移除預裝的 NVIDIA 驅動:
sudo apt-get remove --purge nvidia*
- 安裝依賴包:
sudo apt install dkms build-essential linux-headers-generic
- 下載並安裝 NVIDIA 驅動程式,並關閉圖形界面進行安裝。
- 移除預裝的 NVIDIA 驅動:
- CUDA 安裝步驟:
- 確保 CUDA 版本與所使用的 GPU 型號兼容。選擇合適版本的 CUDA 和 cuDNN。
- 通常需要根據 GPU 顯示卡的型號來選擇相容的 CUDA/cuDNN 版本。
- cuDNN 配置:
- 在安裝 CUDA 之後,安裝 cuDNN 以提升深度學習模型的運行速度。
- 安裝時,需將 cuDNN 的動態庫路徑添加到
LD_LIBRARY_PATH
中。
4. Docker 與 NVIDIA-Docker 的配置
- Docker 安裝建議:使用 Docker 進行深度學習開發可以更好地管理環境,避免版本衝突。
- 需要安裝 Docker CE,並設定好相應的權限來運行 Docker 容器。
- NVIDIA-Docker 配置:
- 安裝 NVIDIA-Docker,使得 Docker 容器可以使用 GPU 資源。
- 這樣的配置可以讓開發者在不同的系統上輕鬆使用 GPU,並避免手動安裝依賴庫的麻煩。
5. 常見問題與解決策略
- 安裝過程中常見錯誤:
- 安裝 CUDA 或 cuDNN 時,可能會遇到許多版本衝突問題,這時需要小心檢查每個步驟的版本是否匹配。
- 若 NVIDIA 驅動無法正確安裝,檢查是否有其他軟體衝突,特別是內建的 Nouveau 驅動。
- 性能調優:
- 使用
nvidia-smi
工具來檢查 GPU 使用情況,確保 GPU 資源得到有效利用。 - 進行模型訓練時,注意 GPU 記憶體的使用情況,避免內存溢出。
- 使用
6. 附加工具與資源
- NVIDIA NGC:
- NGC 是 NVIDIA 提供的 GPU 優化軟體容器,可以方便地拉取深度學習相關的預訓練模型和開發工具。
- Jupyter Notebook 配置:
- 建議使用 Jupyter Notebook 來進行深度學習實驗,它可以直接與 Python 代碼進行交互,並視覺化結果。
結語
建立一個穩定且高效的深度學習開發環境需要細心配置各種硬體、軟體及相依項。這篇指南詳細說明了如何設置和配置環境,幫助讀者避免常見問題並提升開發效率。成功的安裝與設定將使開發者能夠更加專注於深度學習模型的開發和實驗。
📖 如需進一步了解,請參閱原文:
https://blog.twman.org/2020/05/DeepLearning.html