在深度學習、AI等通用計算業務情境或者OpenGL、Direct3D、雲遊戲等圖形加速情境下,安裝了Tesla驅動的GPU才可以發揮高效能運算能力,或提供更流暢的圖形顯示效果。如果您在建立GPU計算型執行個體(Linux)時未同時安裝Tesla驅動,則需要在建立GPU執行個體後,單獨手動安裝Tesla驅動(Linux)。本文為您介紹如何為Linux系統的GPU計算型執行個體手動安裝Tesla驅動。
如果GPU執行個體為Alibaba Cloud Linux 3作業系統的GPU計算型執行個體,且在建立執行個體時未同步自動安裝Tesla驅動,則您也可以通過YUM方式安裝該驅動,具體操作,請參見通過YUM方式快速安裝NVIDIA Tesla驅動(Alibaba Cloud Linux 3)。
操作步驟
本文適用於所有Linux系統的GPU計算型執行個體,更多資訊,請參見GPU計算型(gn系列)。在該執行個體上僅支援安裝與其作業系統一致的Tesla驅動,即Linux系統GPU執行個體支援安裝Tesla驅動(Linux)。
步驟一:下載NVIDIA Tesla驅動
訪問NVIDIA驅動下載頁面。
說明關於安裝和配置NVIDIA驅動程式的更多資訊,請參見NVIDIA Driver Installation Quickstart Guide。
設定搜尋條件後,單擊尋找選擇適用的驅動程式。
設定項說明如下所示:
設定項
說明
樣本
產品類別
產品系列
產品家族
根據執行個體規格配備的GPU選擇對應的產品類別、產品系列和產品家族。
說明關於如何查看GPU執行個體的詳細資料(執行個體ID、執行個體規格以及作業系統等),具體操作,請參見查看執行個體資訊。
Data Center / Tesla
A-Series
NVIDIA A10
作業系統
根據執行個體使用的鏡像選擇對應的Linux作業系統版本。
Linux 64-bit
CUDA工具包版本
選擇CUDA Toolkit版本。
11.4
語言
選擇驅動對應的語言。
Chinese (Simplified)
在搜尋到的驅動頁面,單擊展開查看更多版本。
找到待下載的驅動,單擊對應驅動後的查看。
例如,選擇驅動版本為470.161.03、CUDA工具包版本為11.4的Data Center Driver for Linux x64。
在待下載驅動的詳情頁面,按右鍵下載並選擇複製連結地址。
遠端連線Linux系統的GPU執行個體。
具體操作,請參見通過密碼或密鑰認證登入Linux執行個體。
執行以下命令,下載驅動安裝包。
命令樣本中的驅動下載地址為您在步驟5中擷取的驅動下載連結。
wget https://us.download.nvidia.com/tesla/470.161.03/NVIDIA-Linux-x86_64-470.161.03.run
步驟二:安裝NVIDIA Tesla驅動
不同作業系統執行個體,安裝Tesla驅動的方法有所不同,具體操作如下所示。
CentOS作業系統
執行以下命令,查詢GPU執行個體中是否安裝kernel-devel和kernel-headers包。
sudo rpm -qa | grep $(uname -r)
如果回顯類似如下資訊,即包含了kernel-devel和kernel-headers包的版本資訊,表示已安裝。
kernel-3.10.0-1062.18.1.el7.x86_64 kernel-devel-3.10.0-1062.18.1.el7.x86_64 kernel-headers-3.10.0-1062.18.1.el7.x86_64
如果在回顯資訊中,您沒有找到kernel-devel-*和kernel-headers-*內容,您需要自行下載並安裝kernel對應版本的kernel-devel和kernel-headers包。
重要kernel-devel和kernel版本不一致會導致在安裝driver rpm過程中driver編譯出錯。因此,請您確認回顯資訊中kernel-*的版本號碼後,再下載對應版本的kernel-devel。在樣本回顯資訊中,kernel的版本號碼為3.10.0-1062.18.1.el7.x86_64。
授權並安裝Tesla驅動。
以作業系統是Linux 64-bit的驅動為例,推薦您使用.run形式的Tesla驅動,例如:NVIDIA-Linux-x86_64-xxxx.run。分別執行以下命令,授權並安裝Tesla驅動。
說明如果您使用的是.deb或.rpm等其他形式的Tesla驅動,具體安裝方法,請參見NVIDIA CUDA Installation Guide for Linux。
sudo chmod +x NVIDIA-Linux-x86_64-xxxx.run
sudo sh NVIDIA-Linux-x86_64-xxxx.run
執行以下命令,查看Tesla驅動是否安裝成功。
nvidia-smi
回顯資訊類似如下所示,表示Tesla驅動安裝成功。
(可選)通過NVIDIA Persistence Daemon方式開啟Persistence-M屬性。
Tesla驅動安裝完成後,Persistence-M預設為關閉(
off
)狀態,Tesla驅動在開啟Persistence-M屬性狀態下效能更穩定。為了業務更穩定地進行,建議您通過NVIDIA Persistence Daemon方式開啟Persistence-M屬性。更多資訊,請參見Persistence Daemon。說明Persistence-M(即Persistence Mode)是使用者可設定的驅動程式屬性術語,該屬性可以使目標GPU保持初始化狀態。
通過
nvidia-smi -pm 1
開啟Persistence-M屬性,會導致執行個體重啟後失效等問題,更多資訊,請參見通過nvidia-smi -pm 1命令開啟Persistence Mode屬性,執行個體重啟後失效,同時ECC狀態設定也失敗怎麼辦。推薦您通過NVIDIA Persistence Daemon方式開啟Persistence-M屬性。
執行以下命令,運行NVIDIA Persistence Daemon。
sudo nvidia-persistenced --user username # username為您的使用者名稱。
執行以下命令,查看Persistence-M屬性狀態。
nvidia-smi
回顯資訊類似如下所示,表示Persistence-M為開啟(
on
)狀態。
(可選)重啟系統後開啟Persistence-M屬性。
如果系統重啟,則會導致Persistence-M開啟(
on
)狀態失效,您可以按照以下操作重新開啟Persistence-M屬性。通過安裝Tesla驅動安裝包,將NVIDIA提供的安裝指令碼(例如樣本指令碼和安裝程式指令碼)安裝到
/usr/share/doc/NVIDIA_GLX-1.0/samples/nvidia-persistenced-init.tar.bz2
路徑下。執行以下命令,解壓並安裝NVIDIA提供的安裝指令碼。
cd /usr/share/doc/NVIDIA_GLX-1.0/samples/ sudo tar xf nvidia-persistenced-init.tar.bz2 cd nvidia-persistenced-init sudo sh install.sh
執行以下命令,查看NVIDIA Persistence Daemon是否正常運行。
sudo systemctl status nvidia-persistenced
回顯資訊類似如下所示,表示NVIDIA Persistence Daemon正常運行。
說明您可以根據您的作業系統適配NVIDIA Persistence Daemon安裝指令碼以保證其正常工作。
執行以下命令,再次確認Persistence-M屬性為開啟(
on
)狀態。nvidia-smi
(可選)執行以下命令,關閉NVIDIA Persistence Daemon。
如果目前無需運行NVIDIA Persistence Daemon,您可以選擇關閉NVIDIA Persistence Daemon。
sudo systemctl stop nvidia-persistenced sudo systemctl disable nvidia-persistenced
(條件必選)如果您的GPU執行個體規格類型系列為ebmgn7、ebmgn7e時,安裝與驅動版本對應的nvidia-fabricmanager服務。
重要GPU執行個體規格類型系列為ebmgn7、ebmgn7e時,如果未安裝與版本驅動對應的nvidia-fabricmanager服務,則您將無法正常使用GPU執行個體。
GPU執行個體規格類型系列不是ebmgn7、ebmgn7e時,請跳過本步驟。
安裝nvidia-fabricmanager服務。
您可以通過源碼或者安裝包兩種方式安裝nvidia-fabricmanager服務,以下操作以CentOS 7.x和CentOS 8.x作業系統為例,驅動版本(driver_version)以460.91.03為例,命令樣本如下。其中,
driver_version
替換為步驟一:下載NVIDIA Tesla驅動中下載的驅動版本號碼。源碼方式
安裝包方式
執行如下命令,啟動nvidia-fabricmanager服務。
sudo systemctl enable nvidia-fabricmanager sudo systemctl start nvidia-fabricmanager
執行如下命令,查看nvidia-fabricmanager服務是否安裝成功。
systemctl status nvidia-fabricmanager
回顯資訊如下所示,表示nvidia-fabricmanager服務安裝成功。
Ubuntu等其他動作系統
授權並安裝Tesla驅動。
以作業系統是Linux 64-bit的驅動為例,推薦您使用.run形式的Tesla驅動,例如:NVIDIA-Linux-x86_64-xxxx.run。分別執行以下命令,授權並安裝Tesla驅動。
說明如果您使用的是.deb或.rpm等其他形式的Tesla驅動,具體安裝方法,請參見NVIDIA CUDA Installation Guide for Linux。
sudo chmod +x NVIDIA-Linux-x86_64-xxxx.run
sudo sh NVIDIA-Linux-x86_64-xxxx.run
執行以下命令,查看Tesla驅動是否安裝成功。
nvidia-smi
回顯資訊類似如下所示,表示Tesla驅動安裝成功。
(可選)通過NVIDIA Persistence Daemon方式開啟Persistence-M屬性。
Tesla驅動安裝完成後,Persistence-M預設為關閉(
off
)狀態,Tesla驅動在開啟Persistence-M屬性狀態下效能更穩定。為了業務更穩定地進行,建議您通過NVIDIA Persistence Daemon方式開啟Persistence-M屬性。更多資訊,請參見Persistence Daemon。說明Persistence-M(即Persistence Mode)是使用者可設定的驅動程式屬性術語,該屬性可以使目標GPU保持初始化狀態。
通過
nvidia-smi -pm 1
開啟Persistence-M屬性,會導致執行個體重啟後失效等問題,更多資訊,請參見通過nvidia-smi -pm 1命令開啟Persistence Mode屬性,執行個體重啟後失效,同時ECC狀態設定也失敗怎麼辦。推薦您通過NVIDIA Persistence Daemon方式開啟Persistence-M屬性。
執行以下命令,運行NVIDIA Persistence Daemon。
sudo nvidia-persistenced --user username # username為您的使用者名稱。
執行以下命令,查看Persistence-M屬性狀態。
nvidia-smi
回顯資訊類似如下所示,表示Persistence-M為開啟(
on
)狀態。
(可選)重啟系統後開啟Persistence-M屬性。
如果系統重啟,則會導致Persistence-M開啟(
on
)狀態失效,您可以按照以下操作重新開啟Persistence-M屬性。通過安裝Tesla驅動安裝包,將NVIDIA提供的安裝指令碼(例如樣本指令碼和安裝程式指令碼)安裝到
/usr/share/doc/NVIDIA_GLX-1.0/samples/nvidia-persistenced-init.tar.bz2
路徑下。執行以下命令,解壓並安裝NVIDIA提供的安裝指令碼。
cd /usr/share/doc/NVIDIA_GLX-1.0/samples/ sudo tar xf nvidia-persistenced-init.tar.bz2 cd nvidia-persistenced-init sudo sh install.sh
執行以下命令,查看NVIDIA Persistence Daemon是否正常運行。
sudo systemctl status nvidia-persistenced
回顯資訊類似如下所示,表示NVIDIA Persistence Daemon正常運行。
說明您可以根據您的作業系統適配NVIDIA Persistence Daemon安裝指令碼以保證其正常工作。
執行以下命令,再次確認Persistence-M屬性為開啟(
on
)狀態。nvidia-smi
(可選)執行以下命令,關閉NVIDIA Persistence Daemon。
如果目前無需運行NVIDIA Persistence Daemon,您可以選擇關閉NVIDIA Persistence Daemon。
sudo systemctl stop nvidia-persistenced sudo systemctl disable nvidia-persistenced
(條件必選)如果您的GPU執行個體規格類型系列為ebmgn7、ebmgn7e時,安裝與驅動版本對應的nvidia-fabricmanager服務。
重要GPU執行個體規格類型系列為ebmgn7、ebmgn7e時,如果未安裝與版本驅動對應的nvidia-fabricmanager服務,則您將無法正常使用GPU執行個體。
GPU執行個體規格類型系列不是ebmgn7、ebmgn7e時,請跳過本步驟。
安裝nvidia-fabricmanager服務。
您可以通過源碼或者安裝包兩種方式安裝nvidia-fabricmanager服務,以下操作以Ubuntu 16.04、Ubuntu 18.04、Ubuntu 20.04或Ubuntu 22.04作業系統為例,驅動版本(driver_version)以460.91.03或535.154.05為例,命令樣本如下。其中,
driver_version
替換為步驟一:下載NVIDIA Tesla驅動中下載的驅動版本號碼。重要在Ubuntu 22.04作業系統中安裝nvidia-fabricmanager服務時,需要Tesla驅動版本高於515.48.07,針對Ubuntu 22.04作業系統,下述範例程式碼以535.154.05版本的驅動為例。
原始碼方式
安裝包方式
執行如下命令,啟動nvidia-fabricmanager服務。
sudo systemctl enable nvidia-fabricmanager sudo systemctl start nvidia-fabricmanager
執行如下命令,查看nvidia-fabricmanager服務是否安裝成功。
systemctl status nvidia-fabricmanager
回顯資訊如下所示,表示nvidia-fabricmanager服務安裝成功。
說明nvidia-fabricmanager軟體包版本必須與Tesla驅動版本一致,才能保障GPU的正常使用。在Ubuntu系統下,如果您採用安裝包方式安裝nvidia-fabricmanager服務,則apt-daily服務可能會自動更新nvidia-fabricmanager安裝包,使得nvidia-fabricmanager軟體包版本與Tesla驅動版本不一致,從而導致nvidia-fabricmanager服務啟動失敗,並且GPU無法正常使用。如何解決該問題,請參見nvidia-fabricmanager版本與Tesla驅動版本不一致導致GPU無法正常使用。
相關文檔
如果您購買了Windows系統的GPU計算型執行個體,則只能單獨安裝Tesla驅動來更好地應用於深度學習、AI等通用計算業務情境。具體操作,請參見在GPU計算型執行個體中手動安裝Tesla驅動(Windows)。
如果您需要在建立GPU執行個體時同時安裝了Tesla驅動,具體操作,請參見建立GPU執行個體時自動安裝或載入Tesla驅動。
如果當前Tesla驅動因某種原因需要您卸載,具體操作,請參見卸載Tesla驅動。
如果GPU執行個體中安裝的驅動版本不適用於當前情境,或您安裝了錯誤的驅動類型或版本導致GPU執行個體無法使用,您可以卸載當前驅動然後安裝新的驅動或直接升級驅動。關於如何升級驅動的具體操作,請參見升級NVIDIA驅動。