在 NVIDIA 平臺上開發時,硬件應該對您透明。 GPU 感覺像魔術,但為了優化和表現游戲,最好了解幕后的低級流程。 NVIDIA Nsight 開發工具就是為了這個原因而構建的。
想象一下,一位自豪的房主住在一所他們熱愛并想照顧的房子里。當然,這包括更新實用程序、進行春季清理,甚至可能構建新的插件。但是照顧一個家也包括通常不太好的維護工作。是否有導致水損壞的管道泄漏?廚房的水槽變成棕色,這可能與管道問題有關嗎?現在木瓦下面有霉菌,地板開始吱吱作響,空調不想啟動。問題多于答案,解決方案似乎無助地遙不可及。
管理任何項目,從游戲開發到購房,都需要盡職調查,以確保所有部分都按預期工作。這可能是一個艱巨的挑戰;當問題源于某個底層斷點時,如何修復看不到的問題?歸根結底,除了掀起外殼外,沒有其他方法可以確定和解決問題的根源。當內部工作被暴露出來時,更重要的是,理解的解決方案被明確了。
在看管房子時,你可以為自己配備正確的工具來診斷手頭的任何問題,并幫助防止將來出現任何問題。也許你想在墻上掛一臺電視機,但你不知道飾釘在哪里。通過使用螺柱探測器定位最佳錨定點,避免危機。
同樣,對于圖形開發來說,您必須能夠處理可能出現的任何錯誤修復或優化需求。就像任何其他項目一樣,擁有合適的工具可以實現這一點。
什么是開發工具?
好的開發工具就像一臺 x 光機,可以讓你窺視 GPU 的內部。在物理計算機和您正在構建的應用程序之間總是有一些抽象層,但您無法優化和調試看不到的內容。開發人員工具允許查看硬件級進程,并在屏幕上顯示驅動圖形的計算。
通過揭示諸如 GPU 吞吐量之類的活動指標,并確定諸如幀斷斷續續之類的速度減慢,開發人員工具可以幫助確保您的最終產品性能卓越、優化且制作精良。同時,工具通過消除未經通知的錯誤修復導致的時間匯,加快了開發時間。

當屏幕上的輸出與您的意圖不一致時,顯然出現了問題。在編碼時,如果一行不工作,就會返回一個錯誤。然而,對于那些可以寫得更高效或進行了更多優化的代碼,不會自動提升標志。
圖形開發也是如此。當幀速率突然拖動或場景加載停留太久時,如果不在硬件源處分析問題,猜測和檢查答案是徒勞的。通過提供低級洞察力來通知調試,開發人員工具有助于消除對暴力解決方案的需求。
工具還可以幫助處理更具戲劇性的情況:屏幕上沒有輸出。 GPU 崩潰會以一種突然的、令人困惑的方式停止圖形處理。在大規模可編程 GPU 的時代,您可以編寫自定義著色方法,內存訪問被構建為即時和直接的。這些功能可以實現快速處理的風格多樣性,但也為錯誤觸發崩潰提供了新的機會。在發生故障時訪問硬件狀態對于糾正 GPU 異常至關重要。

什么是 Nsight ?
NVIDIA Nsight Developer Tools 是一套工具,提供對 NVIDIA GPU 最直接、最全面的訪問,以及與之交互的底層代碼。 Nsight 為您通常無權訪問的性能調優和優化提供了關鍵信息。
NVIDIA 圖形卡非常復雜,在充分利用時可以做一些令人驚嘆的事情。這一點隨著每一代新 GPU 的出現而不斷擴大,對于 NVIDIA Ada Lovelace 建筑來說尤其如此。 Nsight 工具套件有助于確保應用程序充分發揮 GPU 處理能力的潛力。
在開發支持 NVIDIA RTX 的應用程序和游戲時尤其如此。 Nsight Graphics 為光線跟蹤和光柵化應用程序提供深入的圖形調試。它暴露了渲染管道中的低效性,并通過清晰的視覺效果(如 GPU 跟蹤和幀分析)很容易找到優化。
如果您希望訪問 GPU 實時性能指標和應用程序中的性能指標,可以使用 Nsight Perf SDK ,它具有實時 HUD 解決方案,可監視 GPU 活動。
對于全系統性能調優方法, Nsight Systems 將 GPU 吞吐量與 CPU 性能和其他指標(包括網絡和內存操作)并行進行分析。通過提供這些工作負載的自上而下捕獲,可以識別性能限制器,并將其與其他硬件事件關聯起來,以在源代碼處指導優化活動。
為了處理意外的 GPU 崩潰,這對任何開發人員來說都是最令人沮喪的障礙之一, Nsight Aftermath SDK 生成詳細的管道轉儲,以識別發生錯誤的源代碼。
還有更多與您的開發領域相關的 Nsight 開發工具可供探索。 Nsight 還包括一組 CUDA 計算工具,包括用于 CUDA 內核評測的 Nsight compute 。有關可用工具寬度的更多信息,請參閱 NVIDIA Developer Tools Overview 。

Nsight 開發工具入門
Nsight 工具擴展了對 NVIDIA Ada Lovelace 架構的支持。要了解 Nsight 工具如何在最新一代 GPU 上提升游戲開發,請參閱以下視頻。
視頻 1.使用 NVIDIA Nsight 工具在 NVIDIA -Ada Lovelace 上構建游戲
視頻 2. NVIDIA 開發工具:開發場景和解決方案演練
今天就學習 Fundamentals for Ray Tracing using NVIDIA Nsight Graphics and NVIDIA Nsight Systems 和開始使用該技術:
了解更多 Nsight Developer Tools 。