AAIニュース
最新ニュースAI日報Hacker日報週報動画AIツールトレンド企業
AAIニュース

世界中のAI最新情報を日本語で。毎時自動収集・翻訳・要約。

コンテンツ

最新ニュースAI日報週報

分析

トレンド企業動画

サイト

についてRSSお問い合わせ
© 2026 ainew.jp — All rights reserved.特定商取引法に基づく表記
ニュース一覧元記事を開く
NVIDIA Developer Blog·2026年6月26日 07:25·約12分

Vulkan デスクリプタヒープの包括的サポートによるリソースバインディングの効率化

#Vulkan#GPU Rendering#Ray Tracing#NVIDIA Nsight Graphics
TL;DR

NVIDIA は Vulkan の新拡張機能「Descriptor Heaps」のドライバーおよびツールサポートを開始し、リソース束縛のプロセスを効率化して Direct3D 12 との互換性を高めた。

AI深層分析2026年6月26日 00:03
4
重要/ 5段階
深度40%
5
関連度30%
3
実用性20%
5
革新性10%
4

キーポイント

1

Vulkan Descriptor Heaps の実装開始

Khronos が策定した「VK_EXT_descriptor_heap」拡張機能が、NVIDIA ドライバー 610 以降で正式にサポートされ、リソース束縛の根本的な見直しを可能にした。

2

Direct3D 12 との機能パリティ向上

本機能は D3D12 の実装と同等のパフォーマンスと制御性を Vulkan に提供し、特に動的テクスチャインデックスや複雑なレイトレーシングシェーダーでの最適化を容易にする。

3

開発者向けツールとサンプルの整備

NVIDIA Nsight Graphics 2026.2 でフレームキャプチャによるデバッグがサポートされ、GitHub では「vk_mini_samples」内で実装例が公開されている。

4

Nsight Graphics を使用したサンプルの実行方法

最新の Nsight Graphics をダウンロードし、Help > Samples メニューから記述ヒープのサンプルを確認できます。

5

OS によるサンプル入手方法の違い

Windows ではメニューから直接アクセス可能ですが、Linux ではサンプルを別途ダウンロードしてビルドする必要があります。

6

単一描画呼び出しでの大規模リソースバインディング

1 つの描画呼び出し(draw call)で 1296 個のテクスチャを扱うことが可能となり、従来の記述子セット(descriptor sets)管理のオーバーヘッドを大幅に削減します。

7

Vulkan デスクリプターヒープの効率化

「0 個の記述子セット」という結果は、ヒープベースのアプローチにより、動的なリソースバインディングが不要になり、CPU と GPU の通信コストを最小限に抑えていることを示しています。

影響分析・編集コメントを表示

影響分析

この記事は、Vulkan エコシステムにおけるリソース管理のボトルネック解消に向けた重要なマイルストーンを示しており、クロスプラットフォーム開発や高パフォーマンスレンダリングの実装コストを大幅に低下させる可能性があります。特に Direct3D 12 と Vulkan の間でコードベースを共有する開発者にとって、機能差による負荷が軽減されるため、業界全体の開発効率向上に寄与します。

編集コメント

Vulkan の長期にわたる課題であったリソース束縛の複雑さを解消する実装が、主要ベンダーによって具体化されました。特にクロスプラットフォーム開発における Direct3D と Vulkan の統合を容易にする点で、エンジニアリングチームにとって即座に活用できる価値のあるニュースです。

シェーダーは、光線、ピクセル、ジオメトリ、テクスチャなどの視覚データを処理して特定のレンダリング効果を生成する GPU プログラムです。シェーダーは「リソースバインディング」と呼ばれるプロセスを通じて必要なデータを見つけます。CPU コードはテクスチャやメモリバッファなどの GPU リソースの作成を調整し、その後、バインディングプロトコルを通じてシェーダーコードがそれらにアクセスできるように慎重に設定します。

Vulkan の新しいディスクリプターヒープ機能はこのプロセスを根本から再構築し、長年のユーザーフィードバックに対応してリソースバインディングを簡素化し、Direct3D 12 (D3D12) でどのように動作するかとの整合性を高めています。ディスクリプターヒープはディスクリプタメモリ管理への直接制御を提供し、現代のハードウェアに適合し、リソース管理のパフォーマンス最適化を簡素化します。これらは特に動的なテクスチャインデックスを使用するレンダラーや、複雑なレイトレーシングシェーダー、または D3D12 をサポートする共有バックエンドが存在する場合に特に有用です。本記事では、ディスクリプターヒープが追加する機能、ディスクリプタセットとの比較方法、および使い始める方法を解説します。

記述ヒープ API は VK_EXT_descriptor_heap によって定義されており、Khronos 団体は リファレンスマニュアル と 使用ガイド の両方を公開しています。EXT という接頭辞は、この拡張機能がベンダー横断的なサポートを受けたことを示しています。Khronos は現在のインターフェースについて改善し、KHR レベルの拡張機能へと昇格させることを目指して フィードバックを積極的に募集 しています。

NVIDIA ドライバー 610 およびそれ以降は、ツールおよびコードサンプルの両方に対応する VK_EXT_descriptor_heap を提供しています。NVIDIA Nsight Graphics 2026.2 では、記述ヒープサポートが、おなじみのフレームキャプチャと検査ワークフローを通じて導入され、記述関連の問題をすばやく特定できるようになります。オープンソースの descriptor_heap サンプルアプリケーションは、この拡張機能を実際にどのように使用するかを学ぶための有益な出発点です。

試すには、Nsight Graphics の最新バージョンをダウンロード して、「ヘルプ」>「サンプル」の下にある記述ヒープのサンプルを確認してください。なお、このメニューは Windows のみで利用可能です。Linux の場合は、サンプルをダウンロードしてビルドする必要があります。

imageimage*図 1. descriptor_heap サンプル。1 つの呼び出しで、面ごとのテクスチャを持つ 6x6x6 の立方体を描画する*

デスクリプタセットからヒープへ移行することのメリットは何ですか?

ディスクリプタは、バッファやテクスチャなどのリソースを記述するベンダー固有のバイト列です。例えば、ディスクリプタは低レベルなポインタと一部のメタデータから構成されることもありますが、シェーダにとっては単なる不透明なメモリ塊に過ぎません。リソースバインディングプロセスは、主に CPU コードおよびシェーダコードの両方においてディスクリプタを管理し、それらにアクセスする方法を扱うことに大きく依存しています。

Vulkan は当初、記述子セットのみを提供していました。これは記述子の配列であり、異なるシェーダーによって構成・再利用が可能です。これには煩雑な記述子セットレイアウト、追加のグループ化、およびプールを通じた割り当てが必要でした。VK_EXT_descriptor_buffer 拡張機能は、記述子に対するアプリケーション管理型メモリを導入しましたが、セットベースのバインディングモデルやレイアウト、その他の必要なインフラストラクチャ層は維持されました。

一方、VK_EXT_descriptor_heap は概念を、ユーザーが割り当てたメモリの「ヒープ」(バイナリヒープデータ構造とは混同しないこと)内のユーザー記述のディスクリプタに単純化します。一度にバインドできるリソースディスクリプタ用のヒープは 1 つのみであり、Vulkan のドキュメントでは、新しいヒープをバインドすると大きなコストがかかりパフォーマンスに影響を与える可能性があるため、アプリケーションのライフタイムを通じて同じヒープを使用することを推奨しています。サンプラ用には、同様のガイドラインに従って別のヒープが使用されます。シェーダー内でのディスクリプタへのアクセスは、以下のセクションで説明されるさまざまな方法によって実現できます。

この柔軟性に対する見返りとして、アプリケーションはメモリ割り当てとレイアウトの責任を引き受けることになります。以下に API の簡単な紹介と、ディスクリプトセットとの比較を示します。より完全な詳細については、Descriptor Heap Guide を参照してください。

ディスクリプタヒープの使用方法

コーディングを開始する準備はできましたか?ディスクリプタヒープと対応するツールを使用するには、以下のソフトウェアバージョンが必要です:

  • この投稿で説明されるすべての機能には NVIDIA Driver 610 以降。新しいドライバーレベルのディスクリプタヒープ更新への早期アクセスは、Vulkan デベロッパーベータドライバーで利用可能な場合があります。
  • Vulkan Headers 1.4.340 以降(Vulkan SDK に含まれています)
  • Nsight Graphics 2026.2

Vulkan の拡張機能である VK_EXT_descriptor_heap 拡張機能も、他のすべての Vulkan 拡張と同様に、使用前に要求する必要があります。VkDeviceCreateInfo の extensions および pNext チェーンに、VK_EXT_DESCRIPTOR_HEAP_EXTENSION_NAME と VkPhysicalDeviceDescriptorHeapFeaturesEXT を追加してください。

既存のシェーダーコードを一切変更せずに使用するために、シェーダー作成時に VkShaderDescriptorSetAndBindingMappingInfoEXT を用いて、ディスクリプタをセットおよびバインディングインデックスにマッピングできます。詳細については、ヒープの既存シェーダーへのマッピングをご覧ください。以下の 2 つの例は、descriptor_heap サンプルでも紹介されています。

  • Push Index: マッピングソースを VK_DESCRIPTOR_MAPPING_SOURCE_HEAP_WITH_PUSH_INDEX_EXT に設定すると、ディスクリプタの位置がプッシュ定数データから読み取られた値だけオフセットされます。これにより、同じシェーダーに対してアプリケーションは描画ごとに異なるディスクリプタ範囲を選択できるようになります。
  • Constant Offset: より単純な方法として、VK_DESCRIPTOR_MAPPING_SOURCE_HEAP_WITH_CONSTANT_OFFSET_EXT は、セット/バインディングディスクリプタの位置に一定のオフセットを追加するだけです。シェーダーはそのバインディングに対して常に同じディスクリプタにアクセスするか、あるいはバインディングが配列であるか bindingCount を持つ場合、シェーダーはオフセットから動的に独自のインデックスを選択できます。

ディスクリプタセットディスクリプタヒープ

vkCreateDescriptorPool、vkAllocateDescriptorSets、VkBuffer は VkDeviceMemory がバインドされ、VK_BUFFER_USAGE_DESCRIPTOR_HEAP_BIT_EXT を持つ。

VkDescriptorSetLayoutBinding

vkCreateDescriptorSetLayout、vkShaderDescriptorSetAndBindingMappingInfoEXT

vkUpdateDescriptorSets

vkCmdPushDescriptorSet、vkWriteResourceDescriptorsEXT

vkCmdPushConstants、vkCmdPushDataEXT

vkCmdBindDescriptorSets、vkCmdBindSamplerHeapEXT、vkCmdBindResourceHeapEXT

*表 1. デスクリプタセット(左)とそれらのデスクリプタヒープの対応物(右)*

以下の GLSL および Slang シェーダー例では、ヒープ全体がゼロ定数オフセットでバインディングにマッピングされています。これにより、シェーダーはヒープ内のデスクリプタをグローバルにインデックス付けします。アプリケーションのマッピングコードは、バインドセットと場所だけでなく、デスクリプタに関する型とストライドの詳細も指定しており、これは対応するシェーダーコードでバインドされる型と一致する必要があります。

GLSL:

layout(set = 0, binding = 0)

uniform texture2D heapImages[];

layout(set = 0, binding = 1)

uniform sampler heapSamplers[];

layout(push_constant)

uniform PushConstants {

uint textureIndex;

} push;

layout(location = 0) in vec2 uv;

layout(location = 0) out vec4 outColor;

void main

{

outColor = texture(

sampler2D(

heapTextures[nonuniformEXT(push.textureIndex)],

heapSamplers[0]),

uv);

}

Slang シェーディング言語:

[[vk::binding(0, 0)]]

Texture2D<float4> heapImages[];

[[vk::binding(1, 0)]]

SamplerState heapSamplers[];

[[vk::push_constant]]

ConstantBuffer<PushConstants> push;

[shader("fragment")]

float4 fragmentMain(float2 uv : TEXCOORD0) : SV_Target

{

return heapImages[NonUniformResourceIndex(push.textureIndex)].Sample(

heapSamplers[0], uv);

}

この構成は、特に D3D12 デスクリプタヒープに慣れている方々には見覚えがあるかもしれません。

  • シェーダーはデスクリプター配列を動的にインデックス付けできる
  • インデックスはアプリケーションによって管理される
  • ヒープはグローバルバインド状態である

しかし、Vulkan は D3D12 といくつかの点で異なります。具体的には、ヒープに対する正確なメモリ場所をアプリケーションが選択することや、異なる種類のデスクリプターが異なるサイズになり得ることなどが挙げられます。

デスクリプタヒープへの直接アクセス

シェーダーは、デスクリプターをセットおよびバインドインデックスにマッピングする代わりに、バウンドされたリソースおよびサンプラーデスクリプタヒープからデスクリプター配列を直接インデックス付けできます。このアプローチはポインタエイリアシングを意味し、有効なアクセスのための注意深いインデックス付けが必要であり、VK_KHR_shader_untyped_pointers 拡張機能を有効にする必要があります。詳細については、Vulkan ガイドの untyped shader model セクションをご覧ください。

descriptor_heap アプリケーションには、未指定ポインタを使用した例が含まれており、Nsight Graphics でも動作します。この機能は現在試すことができますが、この機能は新しく、シェーダー言語やツールチェーン全体でまだ成熟中です。今後の更新にご期待ください。

検査とデバッグ

Nsight Graphics 2026.2 では、記述ヒープ(descriptor heaps)は、開発者がすでに記述セットを確認するために使用しているシェーダーリソースビューと同じ場所に表示されます。VkShaderDescriptorSetAndBindingMappingInfoEXT を使用している場合、マッピングされた記述のみが表示されます。

例えば、図 2 に示すように、1 つの立方体に対する 6 つのテクスチャを確認できます。マッピング値を表示するには、API インスペクターでリンクされているパイプラインまたはシェーダーオブジェクトをクリックし、オブジェクトブラウザ内の createInfo > pNext > pMappings を確認してください(図 3)。

imageimage*図 2. vkCmdDrawIndexed を使用して立方体を描画している間、記述ヒープにマッピングされた画像を表示する Nsight Graphics*

imageimage*図 3. マッピングは、Nsight Graphics のオブジェクトブラウザウィンドウ内の VkShaderEXT オブジェクト(および Vulkan パイプラインオブジェクト)で検査できます*

デバッグツールでの記述ヒープのキャプチャと再生には、実装側がデバイス機能 VkPhysicalDeviceDescriptorHeapFeaturesEXT::descriptorHeapCaptureReplay のサポートが必要です。NVIDIA ドライバーは、バージョン 610 からこの機能のサポートを追加しています。

これが Nsight Graphics を初めて使用する場合は、まずキャプチャを作成し、グラフィックスデバッガーとライブ再生でそれを検査するプロセスになります:

  • [アクティビティ開始] をクリック
  • ダイアログウィンドウで「Launch Graphics Capture」をクリックします
  • アプリケーションウィンドウで F11 キーを押すか、Capture ボタンをクリックしてキャプチャファイルを作成します。このファイルには、フレーム描画に使用されたすべての Vulkan API コールが含まれています
  • アプリを終了します
  • Nsight Graphics に戻ると、キャプチャファイルのドキュメントが表示されます。ドキュメントタブで「Start Graphics Debugger」をクリックします
  • ウィンドウ上部のツールバーで「Start Live Replay」をクリックします
  • Graphics Debugger 下のウィンドウを探索します。左側のイベント一覧のフィルターテキストボックスに「draw」と入力して描画呼び出しを絞り込みます。その後、FS をクリックしてフラグメントシェーダー API の状態を検査します

デスクリプタヒープの使用を開始する

デスクリプタヒープ (descriptor heaps) は、NVIDIA ドライバーおよび開発者ツールとともにもうすぐ使用可能になります。デスクリプタヒープを理解するための最良の方法は、実際にそれらを使って構築を始めることです。

  • サンプルを実行して検査する: 最も簡単な方法は、Help > Samples から Nsight Graphics に付属しているサンプルを実行することです
  • ローカルでビルドおよびデバッグする: descriptor_heap サンプルのビルド手順は、https://github.com/nvpro-samples/vk_mini_samples/ のリポジトリに記載されています
  • フィードバックを提供する: Nsight Graphics に関する問題については、Help > Send Feedback を使用してください。vk_mini_samples 実装に関する問題は、GitHub issue を開いてください。実際の運用での利用や採用に関するフィードバックは歓迎され、NVIDIA Developer Forums で議論したり、Khronos Vulkan-Docs リポジトリに投稿したりできます

使用パターンが成熟し、シェーディング言語のサポートが進化していくにつれて、今後のアップデートにもご注意ください

原文を表示

Shaders are GPU programs that process visual data—such as rays, pixels, geometry, and textures—to produce specific rendering effects. Shaders find necessary data through a process called *resource binding*. CPU code orchestrates the creation of GPU resources such as textures and memory buffers and then carefully arranges for shader code to access them through a binding protocol.

The new descriptor heap feature in Vulkan refactors this process from the ground up, addressing long-standing user feedback to streamline resource binding and bring greater parity to how it works in Direct3D 12 (D3D12). Descriptor heaps give direct control over descriptor memory management, are a better match for modern hardware, and simplify performance optimization of resource management. They’re especially useful for renderers using dynamic texture indexing, for complex ray tracing shaders, or when there is a shared backend supporting D3D12. This post highlights what descriptor heaps add, how they compare to descriptor sets, and how to get started.

The descriptor heap API is defined by VK_EXT_descriptor_heap, for which Khronos has published both a reference manual and usage guide. The EXT prefix signifies that the extension has received cross-vendor support. Khronos is actively seeking feedback about the current interface with the goal of refining it and promoting it to a KHR-level extension.

NVIDIA drivers 610 and later provide VK_EXT_descriptor_heap with support extending to both tooling and code samples. NVIDIA Nsight Graphics 2026.2 introduces descriptor heap support through the same familiar frame capture and inspection workflow, to quickly narrow down descriptor-related issues. The open source descriptor_heap sample application is a helpful starting point to learn how the extension can be used in practice.

To try it, download the latest version of Nsight Graphics and look under Help > Samples for the descriptor heap sample. Note that this menu is only available only on Windows. On Linux, you will need to download and build the sample.

Figure 1. The descriptor_heap sample, drawing 6x6x6 cubes with per-face textures in one call
Figure 1. The descriptor_heap sample, drawing 6x6x6 cubes with per-face textures in one call

What are the benefits of moving from descriptor sets to heaps?

Descriptors are vendor-specific bytes that describe resources such as buffers and textures. For example, a descriptor might consist of a low-level pointer plus some metadata, but to the shader it is simply an opaque chunk of memory. The resource binding process largely consists of managing descriptors and methods of accessing them in both CPU and shader code.

Vulkan originally only provided descriptor sets, which are arrays of descriptors that can be composed and reused by different shaders. These require cumbersome descriptor set layouts, additional grouping, and allocation through pools. The VK_EXT_descriptor_buffer extension introduced application-managed memory for descriptors, but retained the set-based binding model, layouts, and other required layers of infrastructure.

In contrast, VK_EXT_descriptor_heap greatly simplifies the concepts to just user-written descriptors in a user-allocated “heap” of memory (not to be confused with binary heap data structures). Only one heap of resource descriptors can be bound at a time, and the Vulkan documentation recommends that the same heap be used throughout the lifetime of the application because binding a new heap can have significant cost and affect performance. A separate heap is used specifically for samplers, following the same guidelines. Accessing descriptors in the shader can be accomplished using a variety of methods, described in the following sections.

In return for this flexibility, the application accepts the responsibility of memory allocation and layout. The following gives a brief introduction to the API, including a comparison against descriptor sets. For more complete details, see the Descriptor Heap Guide.

How to use descriptor heaps

Ready to start coding? To use descriptor heaps and supported tooling, you’ll want these versions of software:

  • NVIDIA Driver 610 or later for everything described in this post. Early access to new driver-level descriptor heap updates may sometimes be available in the Vulkan developer beta driver.
  • Vulkan Headers 1.4.340 or later (included with the Vulkan SDK)
  • Nsight Graphics 2026.2

As with any Vulkan extension, the VK_EXT_descriptor_heap extension must be requested before use. Add VK_EXT_DESCRIPTOR_HEAP_EXTENSION_NAME and VkPhysicalDeviceDescriptorHeapFeaturesEXT to the VkDeviceCreateInfo extensions and pNext chain.

To use existing shader code without any modifications, descriptors can be mapped to set and binding indices with VkShaderDescriptorSetAndBindingMappingInfoEXT when creating the shader. For details, see mapping the heap to existing shaders. The following two examples are also demonstrated in the descriptor_heap sample:

  • Push Index: With the mapping source set to VK_DESCRIPTOR_MAPPING_SOURCE_HEAP_WITH_PUSH_INDEX_EXT, the descriptor location gets offset by a value read from the push constant data. This allows the application to select different ranges of descriptors per-draw, for the same shader.
  • Constant Offset: Simpler yet, VK_DESCRIPTOR_MAPPING_SOURCE_HEAP_WITH_CONSTANT_OFFSET_EXT just adds a constant offset for the set/binding descriptor location. The shader may always access the same descriptor for that binding, or if the binding is an array or has a bindingCount, the shader can then choose its own index from the offset dynamically.

In the following GLSL and Slang shader examples, the whole heap has been mapped to bindings with a zero constant offset. The shaders then effectively index descriptors in the heap globally. The application mapping code specifies not just the binding set and location but also type and stride detail about the descriptors, which must be matched by the types bound in the corresponding shader code.

GLSL:

layout(set = 0, binding = 0)

uniform texture2D heapImages[];

layout(set = 0, binding = 1)

uniform sampler heapSamplers[];

layout(push_constant)

uniform PushConstants {

uint textureIndex;

} push;

layout(location = 0) in vec2 uv;

layout(location = 0) out vec4 outColor;

void main

{

outColor = texture(

sampler2D(

heapTextures[nonuniformEXT(push.textureIndex)],

heapSamplers[0]),

uv);

}

Slang shading language:

[[vk::binding(0, 0)]]

Texture2D<float4> heapImages[];

[[vk::binding(1, 0)]]

SamplerState heapSamplers[];

[[vk::push_constant]]

ConstantBuffer<PushConstants> push;

[shader("fragment")]

float4 fragmentMain(float2 uv : TEXCOORD0) : SV_Target

{

return heapImages[NonUniformResourceIndex(push.textureIndex)].Sample(

heapSamplers[0], uv);

}

This organization may look familiar, especially for those who are used to D3D12 descriptor heaps:

  • Shaders can index descriptors dynamically
  • Indices are managed by the application
  • Heaps are globally bound state

However, Vulkan differs from D3D12 in several ways, including that the application chooses the exact memory location for the heap, and that descriptors of different types can be different sizes.

Direct descriptor heap access

Shaders can index descriptor arrays directly from bound resource and sampler descriptor heaps instead of mapping descriptors to set and binding indices. This approach implies pointer aliasing, requires careful indexing for valid access and the VK_KHR_shader_untyped_pointers extension must be enabled. To learn more, see the untyped shader model section of the Vulkan guide.

The descriptor_heap application includes an example using untyped pointers and it also works with Nsight Graphics. This capability is now available to try, but the feature is new and still maturing across shader languages and toolchains. Stay tuned for updates.

Inspection and debugging

In Nsight Graphics 2026.2, descriptor heaps show up in the same shader resource views developers already use to see descriptor sets. If you’re using VkShaderDescriptorSetAndBindingMappingInfoEXT, only the mapped descriptors are shown.

For example, see the six textures for one cube in Figure 2. To view the mapping values, click on the pipeline or shader object linked in the API Inspector, and look in the Object Browser under

createInfo > pNext > pMappings (Figure 3).

Figure 2. Nsight Graphics showing six descriptor heap mapped images while drawing a cube using vkCmdDrawIndexed
Figure 2. Nsight Graphics showing six descriptor heap mapped images while drawing a cube using vkCmdDrawIndexed
Figure 3. Mappings can be inspected on VkShaderEXT objects (and Vulkan pipeline objects) in the Object Browser window in Nsight Graphics
Figure 3. Mappings can be inspected on VkShaderEXT objects (and Vulkan pipeline objects) in the Object Browser window in Nsight Graphics

Capture and replay of descriptor heaps in debugging tools requires implementations to support the device feature VkPhysicalDeviceDescriptorHeapFeaturesEXT::descriptorHeapCaptureReplay. NVIDIA drivers have added support for this feature starting with driver version 610.

If this is your first time working with Nsight Graphics, the process is to first create a capture and then inspect it with the graphics debugger and live replay:

  • Click Start Activity
  • Click Launch Graphics Capture in the dialog window
  • Press F11 or click the Capture button in the application window to create a capture file, which contains all the Vulkan API calls used to render a frame
  • Terminate the app
  • Back in Nsight Graphics, you should see the capture file document. In the document tab, click Start Graphics Debugger
  • In the toolbar at the top of the window, click Start Live Replay
  • Explore windows under Graphics Debugger. Isolate draw calls by typing “draw” into the Filter text box of the Events listing on the left. Then click FS to inspect the fragment shader API state

Get started with descriptor heaps

Descriptor heaps are ready to use with NVIDIA drivers and developer tools. The best way to understand descriptor heaps is to start building with them.

  • Run and inspect a sample: The easiest way is to run the sample that comes with Nsight Graphics under Help > Samples
  • Build and debug locally: Instructions for building the descriptor_heap sample are in its repository at https://github.com/nvpro-samples/vk_mini_samples/
  • Provide feedback: For Nsight Graphics issues, use Help > Send Feedback. For issues with the vk_mini_samples implementation, open a GitHub issue. Feedback on real-world use and adoption is appreciated and can be discussed on the NVIDIA Developer Forums and posted in the Khronos Vulkan-Docs repository.

Be on the lookout for future updates as usage patterns mature and shading language support continues to evolve.

この記事をシェア

関連記事

NVIDIA Developer Blog重要度42026年6月26日 01:43

NVIDIA TensorRT を用いた複数 GPU での AI 推論のスケーリングとマルチデバイス推論サポートの紹介

NVIDIA Developer Blog重要度42026年6月26日 01:38

NVIDIA ACE を活用した KRAFTON の共演可能キャラクター「PUBG Ally」の構築方法

NVIDIA Developer Blog重要度42026年6月25日 01:30

物理的 AI アプリケーション向け NVIDIA GPU における BEV ポーリングの高速化

今日のまとめ

AI日報で今日の重要ニュースをまとめ読み

ニュース一覧に戻る元記事を読む