NVIDIA 現(xiàn)在將 Linux GitHub 內(nèi)核模塊發(fā)布為具有雙 GPL / MIT 許可證的開放源代碼,從 R515 驅(qū)動程序版本開始。您可以在 GPU 上的 NVIDIA Open GPU kernel modules repo 中找到這些內(nèi)核模塊的源代碼。
本次發(fā)布是改善在 Linux 中使用 NVIDIA GPU 的體驗、與操作系統(tǒng)更緊密集成以及開發(fā)人員調(diào)試、集成和反饋的重要一步。對于 Linux 發(fā)行商來說,開源模塊增加了易用性。他們還改進了開箱即用的用戶體驗,以簽署和分發(fā) NVIDIA GPU 驅(qū)動程序。 Canonical 和 SUSE 能夠立即用 Ubuntu 和 SUSE Linux 企業(yè)版打包開放內(nèi)核模塊。
開發(fā)人員可以追蹤代碼路徑,了解內(nèi)核事件調(diào)度如何與他們的工作負載交互,以更快地進行根本原因調(diào)試。此外,企業(yè)軟件開發(fā)人員現(xiàn)在可以將驅(qū)動程序無縫集成到為其項目配置的定制 Linux 內(nèi)核中。
這將進一步幫助提高 NVIDIA GPU 驅(qū)動程序的質(zhì)量和安全性,并獲得 Linux 最終用戶社區(qū)的輸入和評論。
每發(fā)布一個新的驅(qū)動程序, NVIDIA 都會在 GitHub 上發(fā)布源代碼的快照。社區(qū)提交的補丁將被審查,如果獲得批準,將集成到未來的驅(qū)動程序版本中。
支持的功能
開放式 GPU 內(nèi)核模塊的第一個版本是 R515 。除了源代碼,還提供了驅(qū)動程序的完整構(gòu)建和打包版本。
對于 NVIDIA Turing 和 NVIDIA Ampere 體系結(jié)構(gòu)系列中的數(shù)據(jù)中心 GPU ,此代碼已準備就緒。這是因為 GSP 驅(qū)動程序體系結(jié)構(gòu) 在過去一年中分階段推出,旨在使 NVIDIA 客戶更容易過渡。我們專注于測試各種各樣的工作負載,以確保與專有內(nèi)核模式驅(qū)動程序的功能和性能對等。
將來, HMM 等功能將成為 NVIDIA Hopper 架構(gòu) 上 confidential computing 的基礎組件。
在這個開源版本中,對 GeForce 和 Workstation GPU 的支持是 alpha 質(zhì)量的。 GeForce 和工作站用戶可以在 Turing 和 NVIDIA Ampere architecture GPU 上使用此驅(qū)動程序來運行 Linux 桌面,并在 Vulkan 和 NVIDIA OptiX 中使用多顯示器、 G-SYNC 和 NVIDIA RTX 光線跟蹤等功能。用戶可以選擇使用 文檔 中突出顯示的內(nèi)核模塊參數(shù)NVreg_EnableUnsupportedGpus。后續(xù)版本將提供更強大、功能更全面的 GeForce 和 Workstation 支持, NVIDIA 開放內(nèi)核模塊最終將取代封閉源代碼驅(qū)動程序。
使用圖靈和安培 GPU 的客戶可以選擇安裝哪些模塊。圖靈前用戶將繼續(xù)運行封閉源代碼模塊。
開源內(nèi)核模式驅(qū)動程序使用相同的固件和相同的用戶模式堆棧,如 CUDA 、 OpenGL 和 Vulkan 。但是,驅(qū)動程序堆棧的所有組件都必須與版本中的版本匹配。例如,您不能從以前或?qū)淼陌姹局蝎@取一個版本的源代碼、構(gòu)建并使用用戶模式堆棧運行它。
有關(guān)安裝正確版本和其他故障排除步驟的說明,請參閱驅(qū)動程序 README 文檔。
安裝選擇加入
R515 版本包含閉源驅(qū)動程序和開源內(nèi)核模塊的預編譯版本。這些版本相互排斥,用戶可以在安裝時進行選擇。默認選項確保為NVIDIA Volta和較老的圖形處理器(與NVIDIA Turing+圖形處理器相比)選擇最佳安裝方式。
用戶可以從源代碼構(gòu)建內(nèi)核模塊,并使用相關(guān)的用戶模式驅(qū)動程序安裝它們。
圖 1 :最終用戶選擇打開 GPU 內(nèi)核模塊的安裝選項以及封閉源代碼模塊的默認路徑的圖示。
伙伴生態(tài)系統(tǒng)
NVIDIA 一直在與 Canonical 、 Red Hat 和 SUSE 合作,為我們的共同客戶提供更好的打包、部署和支持模型。
Canonical
Canonical 的硅聯(lián)盟副總裁辛迪·戈德伯格( Cindy Goldberg )評論道:“新的 NVIDIA 開源 GPU 內(nèi)核模塊將簡化 Ubuntu 用戶的安裝并提高其安全性,無論他們是 AI / ML 開發(fā)者、游戲玩家還是云用戶?!??!白鳛殚_發(fā)人員最受歡迎的基于 Linux 的操作系統(tǒng) Ubuntu 的制造商,我們現(xiàn)在可以通過在 Ubuntu 上與 NVIDIA GPU 進行更緊密的集成,為處于 AI 和 ML 前沿的開發(fā)人員提供更好的支持?!?/p>
在接下來的幾個月里, NVIDIA Open GPU 內(nèi)核模塊將進入最近發(fā)布的 Canonical Ubuntu 22.04 LTS 。
SUSE
“在SUSE,我們?yōu)?NVIDIA 以開源的形式發(fā)布他們的 GPU 內(nèi)核模式驅(qū)動感到興奮。這對于開源社區(qū)和加速計算來說是一個真正的里程碑。 SUSE 自豪地成為第一個在 6 月份通過 SUSE Linux Enterprise 15 SP4 實現(xiàn)這一突破的大型 Linux 發(fā)行版。 NVIDIA 和 SUSE 通過安全的軟件供應鏈和卓越的支持,共同滿足您在云計算、數(shù)據(jù)中心和 edge 方面的 GPU 加速計算需求?!?-Markus Noga , SUSE 業(yè)務關(guān)鍵型 Linux 總經(jīng)理
Red Hat
“企業(yè)開源可以刺激創(chuàng)新,改善客戶體驗,這是 Red Hat 一直倡導的。我們對 NVIDIA 開放其 GPU 的決定表示贊賞?!眱?nèi)核驅(qū)動程序。Red Hat 與 NVIDIA 合作多年,我們很高興看到他們邁出了下一步。我們期待著將這些功能帶給我們的客戶,并改善與 NVIDIA 硬件的互操作性?!?-Mike McGrath ,Red Hat 公司 Linux 工程副總裁
上游進近
多年來, NVIDIA GPU 驅(qū)動程序的設計旨在跨操作系統(tǒng)、 GPU 和 Jetson SOC 共享代碼,以便我們能夠在所有受支持的平臺上提供一致的體驗。當前的代碼庫不符合 Linux 內(nèi)核設計約定,也不是 Linux 上游的候選代碼庫。
有計劃與 Linux 內(nèi)核社區(qū)以及 Canonical 、 Red Hat 和 SUSE 等合作伙伴一起研究上游方法。
同時,已發(fā)布的源代碼可以作為參考,幫助改進 Nouveau driver 。 Nouveau 可以利用 NVIDIA 驅(qū)動程序使用的相同固件,公開許多 GPU 功能,如時鐘管理和熱管理,為樹內(nèi) Nouveau 驅(qū)動程序帶來新功能。
請繼續(xù)關(guān)注 GitHub 上未來驅(qū)動程序發(fā)布和協(xié)作的更多發(fā)展。
常見問題
在哪里可以下載 R515 驅(qū)動程序?
您可以下載 R515 開發(fā)驅(qū)動程序作為 CUDA 工具包 11.7 ,或來自“測試版”驅(qū)動程序下的驅(qū)動程序 下載頁面 。 R515 數(shù)據(jù)中心驅(qū)動程序?qū)凑瘴覀兺ǔ5墓?jié)奏在后續(xù)版本中發(fā)布。
GPU 開放內(nèi)核模塊可以分發(fā)嗎?
是的, NVIDIA 開放內(nèi)核模塊根據(jù)雙重 GPL / MIT 許可證獲得許可;許可證條款規(guī)定了分發(fā)和重新包裝授權(quán)。
是否會發(fā)布 CUDA 等用戶模式驅(qū)動程序的源代碼?
這些變化是針對內(nèi)核模塊的;而用戶模式組件未被觸及。因此,用戶模式將保持封閉源代碼,并在驅(qū)動程序和 CUDA 工具包中使用預構(gòu)建的二進制文件發(fā)布。
開放的 GPU 內(nèi)核模塊支持哪些 GPU ?
開放內(nèi)核模塊支持所有安培和圖靈 GPU 。數(shù)據(jù)中心 GPU 支持生產(chǎn),而 GeForce 和工作站 GPU 支持 alpha quality 。請參考數(shù)據(jù)中心、 NVIDIA RTX 和 GeForce 產(chǎn)品表 了解更多詳細信息(圖靈及以上版本的計算能力為 7.5 或更高)。
如何報告錯誤
可以通過 GitHub 存儲庫問題跟蹤器 或我們現(xiàn)有的 最終用戶支持論壇 報告問題。請通過 GitHub 存儲庫安全策略 上列出的渠道報告安全問題。
補丁提交和補丁 SLA / CLA 的流程是什么?
我們鼓勵通過 GitHub 頁面上的 pull 請求提交社區(qū)信息。提交的補丁將被審查,如果獲得批準,將與可能的修改集成到未來的驅(qū)動程序版本中。請參閱 NVIDIA 驅(qū)動程序生命周期 文檔。
發(fā)布的源代碼是從共享代碼庫生成的快照,因此在 GitHub repo 中,貢獻可能不會作為單獨的 Git 提交反映出來。我們正在制定一個承認社區(qū)貢獻的程序。出于同樣的原因,我們還建議不要對代碼進行重大的重新格式化。
我們的 GitHub page 中描述了提交請求的過程, 貢獻者許可協(xié)議 中涵蓋了這些貢獻。
關(guān)于作者
Ram Cherukuri 是 CUDA 平臺和 DLA 軟件的高級產(chǎn)品經(jīng)理。在 NVIDIA 之前, Ram 是 MathWorks 的產(chǎn)品經(jīng)理,負責嵌入式軟件開發(fā)的代碼生成和驗證產(chǎn)品,與汽車和航空 def 客戶合作。他持有普渡大學航空工程碩士學位,并在孟買大學獲得同一學科的學士學位。Shirish Baskaran 是 NVIDIA 的高級系統(tǒng)軟件經(jīng)理,他領(lǐng)導核心 GPU 內(nèi)核驅(qū)動程序團隊。在過去幾年中,他一直專注于構(gòu)建和引入 GPU 系統(tǒng)處理器( GSP )驅(qū)動程序體系結(jié)構(gòu)和開放式 Linux 內(nèi)核模塊。
Shirish Baskaran 是 NVIDIA 的高級系統(tǒng)軟件經(jīng)理,他領(lǐng)導核心 GPU 內(nèi)核驅(qū)動程序團隊。在過去幾年中,他一直專注于構(gòu)建和引入 GPU 系統(tǒng)處理器( GSP )驅(qū)動程序體系結(jié)構(gòu)和開放式 Linux 內(nèi)核模塊。
Andy Ritger 在 2000 年秋季 NVIDIA 首次發(fā)布 Linux GPU 驅(qū)動程序后不久加入 NVIDIA ,擔任 Linux OpenGL 驅(qū)動程序工程師。從那以后,安迪一直在公司的整個 Linux GPU 驅(qū)動程序堆棧中工作,目前他是 NVIDIA 杰出的工程師。他就讀于伊利諾伊衛(wèi)斯理大學,并獲得了計算機科學學士學位。
Fred Oh 是 CUDA 、 CUDA on WSL 和 CUDA Python 的高級產(chǎn)品營銷經(jīng)理。弗雷德?lián)碛屑又荽髮W戴維斯分校計算機科學和數(shù)學學士學位。他的職業(yè)生涯開始于一名 UNIX 軟件工程師,負責將內(nèi)核服務和設備驅(qū)動程序移植到 x86 體系結(jié)構(gòu)。他喜歡《星球大戰(zhàn)》、《星際迷航》和 NBA 勇士隊。
Dwayne Swoboda 是 NVIDIA 服務器軟件高級總監(jiān)。他成立了核心驅(qū)動程序組織,領(lǐng)導新的開源驅(qū)動程序模型的開發(fā),并支持跨 NVIDIA 的過渡。德韋恩現(xiàn)在還領(lǐng)導著負責 NVIDIA DGX 和 HGX 服務器產(chǎn)品的軟件團隊。
審核編輯:郭婷
-
NVIDIA
+關(guān)注
關(guān)注
14文章
5309瀏覽量
106360 -
服務器
+關(guān)注
關(guān)注
13文章
9793瀏覽量
87950 -
python
+關(guān)注
關(guān)注
56文章
4827瀏覽量
86711
發(fā)布評論請先 登錄
迅為RK3568開發(fā)板內(nèi)核模塊實現(xiàn)-查看模塊信息
迅為RK3568開發(fā)板內(nèi)核模塊實現(xiàn)-模塊加載與卸載
迅為RK3568開發(fā)板內(nèi)核模塊實現(xiàn)-編譯模塊
飛凌嵌入式ElfBoard ELF 1板卡-Linux驅(qū)動模塊之helloworld驅(qū)動
如果系統(tǒng)日志顯示驅(qū)動問題,我該怎么辦?
常見GPU問題及解決方法
Linux設備驅(qū)動程序分類有哪些
linux驅(qū)動程序如何加載進內(nèi)核
linux驅(qū)動程序的編譯方法是什么
linux驅(qū)動程序的編譯方法有哪兩種
linux驅(qū)動程序運行在什么空間
NVIDIA全面轉(zhuǎn)向開源GPU內(nèi)核模塊

評論