隨著 Intel Thunderbolt 3 在筆記本電腦中的引入,您現在可以使用外部 GPU ( e GPU )外殼來使用專用的 GPU 來進行游戲、制作和數據科學。霹靂 3e GPU 設置包括
離散的
用來安置它的圍欄
與筆記本電腦的 Thunderbolt 3 連接
大多數外殼都提供了所有這些,所以您只需要使用一臺帶有 Thunderbolt 3 的筆記本電腦。
因為我很看重輕薄筆記本的便攜性,但希望用一臺 GPU 的原始馬力來完成嚴肅的工作, e GPUs 讓我可以兩全其美。通過一根 Thunderbolt 3 電纜,我可以將我的筆記本電腦連接到一個強大的專用 GPU 、多個顯示器和外圍設備。
選擇硬件
e GPU 解決方案的性能在很大程度上取決于 GPU 的性能、 CPU 的性能以及兩者之間的連接帶寬。
確保您的筆記本電腦支持 Thunderbolt 3
Thunderbolt 3 是一個通過 USB-C 工作的硬件接口,在主機 CPU 和 GPUs 等設備之間支持多達四個 PCI Express ( PCIe )通道,這為您提供了理論上的最大值:
4 x 8Gbps (the bandwidth of a single PCIe Gen3 lane) = 32 Gbps
筆記本電腦制造商可以設計少于四個通道的筆記本電腦,因此您應該咨詢筆記本電腦制造商,以了解在您的機器上使用 Thunderbolt 3 有多少個 PCIe 通道可用。 e GPU 。 io 上的人維護著一個 e GPU 應用的最佳筆記本電腦 的列表。
Windows 和 Linux 支持 e GPUs 。這篇文章關注的是 ubuntulinux 上的 e GPUs 。我使用的筆記本電腦是運行 ubuntu20 。 04lts 的聯想 thinkpadx1yoga (第四代),但是這篇文章已經在 ubuntu18 。 04lts 上測試過了。
選擇存儲模塊
雖然存儲模塊在功能、大小、供電和成本方面各不相同,但 e GPU 。 io 的工作人員也會對 霹靂 3 外殼列表 進行維護,并對其功能進行簡要描述,以幫助您做出決定。我的選擇是十四行詩 eGFX 分離盒( 350W )。
選擇 GPU
您對 GPU 的選擇取決于您的用例和對外殼的選擇。一些考慮因素包括功耗、卡大小、 GPU 內存和時鐘速度。我選擇的 GPU 是 RTX 2080 Super 。
設置 Ubuntu 以使用 NVIDIA e GPU
本文假設您將使用 Ubuntu18 。 04LTS / 20 。 04LTS 。
安裝 CUDA 和 NVIDIA 驅動程序
在 e GPU 連接的情況下安裝 Ubuntu 并重新啟動。
將系統更新到最新內核:
$ sudo apt-get update $ sudo apt-get dist-upgrade
確保系統檢測到 NVIDIA GPU 并且加載了合適的驅動程序:
$ lspci | grep -i “nvidia” $ lsmod | grep -i “nvidia”
現有的驅動程序很可能是 Nouveau , NVIDIA GPUs 的開源驅動程序。因為 Nouveau 不支持 e GPU 設置,所以應該安裝 NVIDIA CUDA 和 NVIDIA 驅動程序。您還必須停止內核加載 Nouveau 。
為您的發行版獲取 NVIDIA CUDA 工具箱 的最新版本。對于 Ubuntu 20 。 04 ,可以從標準存儲庫獲取此工具箱:
$ sudo apt-get install nvidia-cuda-toolkit
將 Xorg 卸載到 e GPU
在安裝了 NVIDIA 專有驅動程序之后,通過在/ etc / gdm3 中注釋出# WaylandEnable = false ,確保 Ubuntu 18 。 04 / 20 。 04 的 gdm3 (圖形登錄管理器)沒有使用 Wayland /自定義。 conf :
# GDM configuration storage # # See /usr/share/gdm/gdm.schemas for a list of available options. [daemon] # Uncomment the line below to force the login screen to use Xorg WaylandEnable=false
然后,將 3 附加到/ etc / DEFAULT / GRUB 中的 GRUB _ CMDLINE _ LINUX _ DEFAULT 后面,引導到運行級別 3 :
#If you change this file, run 'update-grub' afterwards to update # /boot/grub/grub.cfg. # For full documentation of the options in this file, see: # info -f grub -n 'Simple configuration' GRUB_DEFAULT=0 GRUB_TIMEOUT_STYLE=hidden GRUB_TIMEOUT=0 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" GRUB_CMDLINE_LINUX=""
最后,更新 grub 并重新啟動:
$ sudo update-grub $ sudo shutdown --reboot
重新啟動到運行級別 3 并檢查 NVIDIA 專有驅動程序是否已加載:
$ nvidia-smi
編輯/ usr / share / X11 / xorg . conf 公司. d / 10- NVIDIA . conf 在 OutputClass 中添加一個附加選項,以允許 NVIDIA X 驅動程序加速 X ,而不是由集成的 GPU 驅動:
Section "OutputClass" Identifier "nvidia" MatchDriver "nvidia-drm" Driver "nvidia" Option "AllowExternalGpus" "True" Option "AllowEmptyInitialConfiguration" ModulePath "/usr/lib/x86_64-linux-gnu/nvidia/xorg" EndSection
將/ etc / default / grub 還原為默認值,方法是從 grub _ CMDLINE _ LINUX _ default 中刪除“ 3 ”,然后更新 grub :
$ sudo update-grub
通過查看$ NVIDIA -smi 的輸出,重新啟動并檢查以確保您的 X 會話被 NVIDIA NVIDIA 加速。
$ nvidia-smi output
圖 1 NVIDIA -smi 顯示 X 服務器正在 NVIDIA e GPU 上運行,其他使用指標。
結果應該顯示至少一個 GPU 的利用率,即 e GPU 存儲模塊中的一個。可能會顯示其他 GPUs ,這取決于您的系統有多少 NVIDIA GPUs 。如果您看到進程 /usr/lib/xorg/Xorg ,這意味著您的 X 會話正在被 NVIDIA GPU 加速。
使用 NGC 容器
容器提供了一種設置開發環境的簡單方法。 NGC 上的容器注冊表跨越人工智能、數據科學和 HPC ,擁有廣泛的 GPU 加速軟件 NVIDIA GPUs 。 NGC 托管了頂級人工智能和數據科學軟件的容器,這些軟件由 NVIDIA 進行了調優、測試和優化,同時還為 HPC 應用和數據分析提供了經過充分測試的容器
現在您已經安裝了 NGC 驅動程序,您可以安裝 NVIDIA – 玩偶 并從 NGC 下拉 NGC NGC – 優化容器來執行各種任務:
CUDA 用于 GP GPU
NeMo for conversational AI
帕拉布里茨 用于 DNA 測序
以及人工智能、數據科學和高性能計算機領域的更多容器
下面是一個使用 NGC 圖像運行 深水流 的示例:
dsingal@dsingalX1NV:~$ sudo docker pull nvcr.io/nvidia/deepstream:5.0-20.07-triton dsingal@dsingalX1NV:~$ xhost + dsingal@dsingalX1NV:~$ docker run --gpus all -it --rm -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY -w /opt/nvidia/deepstream/deepstream-5.0 nvcr.io/nvidia/deepstream:5.0-dp-20.04-triton root@dsingalX1NV:/opt/nvidia/deepstream/deepstream-5.0# deepstream-app -c ./samples/configs/deepstream-app/source4_1080p_dec_infer-resnet_tracker_sgie_tiled_display_int8.txt
結論
現在您已經設置了 e GPU ,您可以通過執行類似于 使用 NVIDIA Riva 加速文本到語音轉換 、 用 NVIDIA Merlin 構建深度推薦系統 、 使用 NVIDIA DeepStream 構建 IVA 應用程序 等操作來利用可用的大規模并行計算。
關于作者
Dhruv Singal 是 NVIDIA 的解決方案工程師。他專注于計算機視覺和自然語言在許多垂直行業的應用。在 NVIDIA 之前, Dhruv 在圣路易斯奧比斯波的 CalPoly 獲得計算機科學學士學位,在那里他學習并行編程和深度學習。
審核編輯:郭婷
-
gpu
+關注
關注
28文章
4734瀏覽量
128914 -
Linux
+關注
關注
87文章
11300瀏覽量
209397 -
機器學習
+關注
關注
66文章
8411瀏覽量
132600
發布評論請先 登錄
相關推薦
評論