MRが楽しい

MRやVRについて学習したことを書き残す

NVIDIA Nsight Graphicsの環境構築

本日は環境構築枠です。
NVIDIA Nsight Graphicsの環境構築手順を記事にします。

NVIDIA Nsight Graphics

NVIDIA Nsight Graphics は Direct3D(11,12,DXR),Vulkan(1.2,NV Vulkan Ray Tracing Extension),OpenGL,OpenVR および Oculus で構築されたフレームをデバッグ、プロファイル、およびエクスポートできるスタンドアロンの開発ツールです
developer.nvidia.com

レンジベースのGPUプロファイリング

・自動化されたパフォーマンスリミッター分析により最適化の機会を特定します
・メトリックリストを使用してワークロード固有のタイミングとパフォーマンスカウンターを収集します

GPUトレース

・最小限のオーバーヘッドでGPUスループットと使用率を分析します
・パフォーマンスマーカーを掘り下げて以下の情報を検査します
ハードウェアユニットのスループット、SM占有率、命令とメモリのスループット、キャッシュヒット率など

Nsight Aftermath

DirectX 12およびDirectXレイトレーシングアプリケーションでのGPUのクラッシュとハングのデバッグを行います
・Nsight Graphicsの便利なGPUダンプビューアーで、シェーダーソースの正確なラインを含むシェーダーユニットの状態を検査します

レイトレーシングデバッグ

レイトレーシングAPI呼び出しを状態を調べます
・Acceleration Structure Viewerなどのレイトレーシング固有のツールは、レイトレーシングアプリケーション開発の一般的な問題点を緩和します

C ++キャプチャエクスポート

・元のアプリケーションを必要とせずにCPU負荷の少ないシナリオでフレーム分析を可能にする自己完結型C ++プロジェクトを作成します
・再現性のある分離された分析と実験を実行します

ピクセル履歴

ピクセルに貢献したすべてのイベントを特定して閲覧します
・ソースの色と深度、合否、プリミティブ情報を確認します

前提条件

最新のNVIDIA Driverが必要です。
以下の記事を参考に、最新の NVIDIA Driver を取得してインストールして下さい。
bluebirdofoz.hatenablog.com

インストール手順

ダウンロードページからの取得

以下のページの[Download Now]をクリックします。
developer.nvidia.com
f:id:bluebirdofoz:20200822175120j:plain

利用環境に合わせてダウンロードリンクをクリックします。
今回、筆者は Windows 環境で利用するので「Nsight Graphics (Windows)」をクリックしました。
f:id:bluebirdofoz:20200822175132j:plain

NVIDIA_Nsight_Graphics_XXX.msi という名前のインストーラがダウンロードできます。
f:id:bluebirdofoz:20200822175142j:plain

インストーラの実行

ダウンロードした msi ファイルを実行します。
f:id:bluebirdofoz:20200822175152j:plain

インストーラが起動するので[Next]をクリックします。
f:id:bluebirdofoz:20200822175201j:plain

利用規約が表示されるので[I accept the terms the License Agreement]にチェックを入れ、[Next]をクリックします。
f:id:bluebirdofoz:20200822175209j:plain

セットアップの設定ダイアログが表示されます。
インストールする機能やディレクトリを指定して[Next]をクリックします。
今回はデフォルトのままとしました。
f:id:bluebirdofoz:20200822175219j:plain

最後に[Install]をクリックすると、インストールが開始します。
f:id:bluebirdofoz:20200822175229j:plain

以上で NVIDIA Nsight Graphics のインストールは完了です。
f:id:bluebirdofoz:20200822175241j:plain

NVIDIA Nsight Graphics の起動

アプリ名から Nsight を検索して NVIDIA Nsight Graphics を起動します。
このとき、アプリケーションを[管理者として実行]します。
管理者で実行しない場合、権限の問題で起動時に[ERR_NVGPUCTRPERM]のエラーが発生することがあります。
f:id:bluebirdofoz:20200822175251j:plain

初回起動時にはデータ収集の許諾確認画面が表示されます。
収集を許可する場合は[Yes]を、許可しない場合は[No]をクリックします。
f:id:bluebirdofoz:20200822175301j:plain

プロジェクトを作成せず、計測を行いたい場合は[Quick Launch]で起動します。
f:id:bluebirdofoz:20200822175312j:plain

[Application Executable]に計測するアプリケーションを指定します。
f:id:bluebirdofoz:20200822175321j:plain

アプリケーションを指定したら[Launch Frame Debugger]で起動します。
f:id:bluebirdofoz:20200822175332j:plain

アプリケーションが起動し、NVIDIA Nsight Graphics にはアプリケーションの計測結果が表示されます。
フレーム単位でのより詳細な情報を表示したい場合は[Capture for Live Analysis]をクリックします。
f:id:bluebirdofoz:20200822175344j:plain

フレームの描画処理が解析され、どのような処理を行って描画が行われたかを確認することができます。
f:id:bluebirdofoz:20200822175355j:plain