快轉到主要內容

Nvidia Container Toolkit優點:不想裝CUDA但是想跑CUDA,那就改在Docker容器裡跑吧

· 民國113年甲辰年
·
切換繁體/簡體
分類   資訊科技 虛擬機與容器技術
標籤   Nvidia CUDA Docker
目錄

Nvidia Container Toolkit是Nvidia開發的開源軟體,原始碼位於Github,當然Nvidia驅動部分還是閉源的。

1. Nvidia Container Toolkit優點?
#

有些程式(就是在說你,Tensorflow)非常吃Nvidia閉源驅動+CUDA+Linux系統的版本,三位一體只要有個版本不對就會出亂子,甚至CUDA只要差一兩個版本程式就會不給跑。

這個時候採用Docker容器化開發可以降低困擾,將CUDA塞在Docker裡面就能迴避Linux宿主機版本的要求。

Nvidia Container Toolkit僅求要求宿主機安裝Nvidia閉源驅動即可,卻不需要安裝CUDA Toolkit。

並且由於容器有多重複製的特性,開發者能夠按照不同專案需求開不同的容器環境部署服務,各個容器的CUDA版本是彼此獨立的。

此外,依賴CUDA的cudnn、TensorRT應也可如法炮製。

宿主機只需要安裝Nvidia閉源驅動,剩下的交給Docker容器去處理就好了。而負責讓容器內的CUDA跟宿主機Nvidia驅動溝通的媒介,就是Nvidia Container Toolkit了。


Nvidia Container Toolkit還可以解決依賴特定發行版的問題。如果你系統用的不是Nvidia原廠支援的發行版(Deb-based、RPM-based)的就GG了,這很不公平。

Nvidia Container Toolkit僅依賴宿主機的Nvidia閉源驅動,卻不需要安裝CUDA Toolkit。

於是它可以讓Linux宿主機在沒有安裝CUDA Toolkit的情況下,於Docker/Podman容器使用CUDA進行計算。

特別適合給不方便安裝CUDA的Linux使用。

這適用一種極端的情況:immutable distro,例如Fedora Silverblue、openSUSE MicroOS、Vanilla OS等等。他們雖然可以裝Nvidia驅動,但是沒辦法安裝CUDA套件。透過Nvidia Container Toolkit即可繞過這個問題。

2. 安裝Nvidia Container Toolkit
#

請見:Ubuntu LTS如何安裝Nvidia顯示卡驅動

參考資料
#

Installing the NVIDIA Container Toolkit - NVIDIA CONTAINER TOOLKIT

相關文章

解鎖Arch Linux的Nvidia vGPU虛擬化,增強QEMU/KVM虛擬機圖形效能
分類   資訊科技 虛擬機與容器技術
標籤   GPU Virtualization Nvidia CUDA Arch Linux
虛擬機直通Nvidia GPU後讓Linux宿主機重新使用GPU
分類   資訊科技 虛擬機與容器技術
標籤   GPU Passthrough PCI Passthrough Libvirt Nvidia
讓WSL Docker的OpenGL程式可以使用Windows GPU硬體加速
分類   資訊科技 虛擬機與容器技術
標籤   Nvidia WSL Docker

此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。

這是Disqus留言板,您可能會看到Disqus強制投放的廣告。為防止垃圾內容,有時留言可能會被系統判定需審核,導致延遲顯示,請見諒。若要上傳圖片請善用圖床網站。