microsoft / D3D12TranslationLayer

A library containing utilities for mapping higher-level graphics work to D3D12
MIT License
327 stars 47 forks source link

Creating a query heap per query might be too expensive #69

Open jenatali opened 2 years ago

jenatali commented 2 years ago

Trying to run Tracy through D3D11On12 takes far too long to start up, with pretty much all of the time spent creating 64*1024 timestamp queries. Each of these timestamp queries creates a 4-query heap, which likely involves allocating a 64KiB query heap to store 32B.

This should probably turn into a device (immediate context) level query heap pool per type where query heap slots can be suballocated out to individual queries.