CUDA(Compute Unified Device Architecture)的軟體堆棧由驅動層、運行時層和函數庫層構成。CUDA軟體堆棧中涉及的API包括驅動層API和運行時層API。本文介紹如何擷取驅動層API和運行時API的版本,以及NVIDIA官方提供的CUDA Toolkit與Driver Version的相容性列表。
CUDA介紹
CUDA是顯卡廠商NVIDIA在2007年推出的並行計算平台和編程模型。CUDA利用圖形處理器GPU(Graphics Processing Unit),可顯著提高計算效能。
下圖展示CUDA的架構體系。CUDA軟體堆棧中的驅動層API和運行時層API的區別如下。
驅動層API(Driver API):功能較完整,但是使用複雜。
運行時API(CUDA Runtime API):封裝了部分驅動的API,將某些驅動初始化操作隱藏,使用方便。
CUDA的Driver API由NVIDIA Driver包提供,而CUDA Library和CUDA Runtime由CUDA Toolkit包提供。
擷取驅動層API版本
如果一個節點安裝了NVIDIA驅動包,則可以執行nvidia-smi
查看驅動版本和CUDA驅動API版本。樣本如下圖,該節點安裝的驅動版本為515.105.01,驅動API版本為11.7,表示該驅動最高支援CUDA運行時API版本為11.7。
擷取運行時API版本
在容器中運行GPU應用與在節點上運行GPU應用的差異點如下。
NVIDIA驅動安裝在節點。
容器鏡像中安裝CUDA Toolkit時,使用NVIDIA提供的CUDA基礎鏡像。這些基礎鏡像已經安裝了CUDA Toolkit。您可以基於基礎鏡像構建應用程式容器鏡像。您也可以根據不同的CUDA Toolkit版本選擇不同的CUDA基礎鏡像。
在容器中使用GPU情境下,應用程式使用的CUDA運行時API版本與該應用的Docker鏡像使用的CUDA基礎鏡像版本一致。例如,您的應用的Docker鏡像基於CUDA基礎鏡像NVIDIA/CUDA:12.2.0-base-Ubuntu20.04
構建,那麼應用使用的CUDA運行時API版本為12.2.0。
CUDA Toolkit和驅動的版本相容性列表
下表為NVIDIA官方提供的CUDA Toolkit和驅動的版本相容性列表(該列表並不表示ACK目前支援的驅動列表,關於ACK支援的GPU驅動版本,請參見ACK支援的NVIDIA驅動版本列表)。您可以根據您的應用所使用的CUDA Toolkit版本,對照CUDA Toolkit與NVIDIA驅動的版本相容性列表,選擇合適的NVIDIA驅動版本。更多資訊,請參見cuda-toolkit-release-notes。
CUDA Toolkit版本 | Linux x86_64驅動版本 |
CUDA 12.1 Update 1 | >=530.30.02 |
CUDA 12.1 GA | >=530.30.02 |
CUDA 12.0 Update 1 | >=525.85.12 |
CUDA 12.0 GA | >=525.60.13 |
CUDA 11.8 GA | >=520.61.05 |
CUDA 11.7 Update 1 | >=515.48.07 |
CUDA 11.7 GA | >=515.43.04 |
CUDA 11.6 Update 2 | >=510.47.03 |
CUDA 11.6 Update 1 | >=510.47.03 |
CUDA 11.6 GA | >=510.39.01 |
CUDA 11.5 Update 2 | >=495.29.05 |
CUDA 11.5 Update 1 | >=495.29.05 |
CUDA 11.5 GA | >=495.29.05 |
CUDA 11.4 Update 4 | >=470.82.01 |
CUDA 11.4 Update 3 | >=470.82.01 |
CUDA 11.4 Update 2 | >=470.57.02 |
CUDA 11.4 Update 1 | >=470.57.02 |
CUDA 11.4.0 GA | >=470.42.01 |
CUDA 11.3.1 Update 1 | >=465.19.01 |
CUDA 11.3.0 GA | >=465.19.01 |
CUDA 11.2.2 Update 2 | >=460.32.03 |
CUDA 11.2.1 Update 1 | >=460.32.03 |
CUDA 11.2.0 GA | >=460.27.03 |
CUDA 11.1.1 Update 1 | >=455.32 |
CUDA 11.1 GA | >=455.23 |
CUDA 11.0.3 Update 1 | >= 450.51.06 |
CUDA 11.0.2 GA | >= 450.51.05 |
CUDA 11.0.1 RC | >= 450.36.06 |
CUDA 10.2.89 | >= 440.33 |
CUDA 10.1 (10.1.105 general release, and updates) | >= 418.39 |
CUDA 10.0.130 | >= 410.48 |
CUDA 9.2 (9.2.148 Update 1) | >= 396.37 |
CUDA 9.2 (9.2.88) | >= 396.26 |
CUDA 9.1 (9.1.85) | >= 390.46 |
CUDA 9.0 (9.0.76) | >= 384.81 |
CUDA 8.0 (8.0.61 GA2) | >= 375.26 |
CUDA 8.0 (8.0.44) | >= 367.48 |
CUDA 7.5 (7.5.16) | >= 352.31 |
CUDA 7.0 (7.0.28) | >= 346.46 |
相關文檔
為節點安裝NVIDIA驅動時,需要確保驅動版本包含在ACK支援的驅動版本列表中。詳細資料,請參見ACK支援的NVIDIA驅動版本列表。