Livelli hardware
I livelli di hardware dal livello 1 al livello 3 hanno risorse crescenti disponibili per la pipeline.
Limiti dipendenti dall'hardware
Risorse disponibili per la pipeline | Livello 1 | Livello 2 | Livello 3 |
---|---|---|---|
Livelli di funzionalità | 11.0+ | 11.0+ | 11.1+ |
Numero massimo di descrittori in una visualizzazione buffer costante (CBV), visualizzazione risorse shader (SRV) o heap di accesso non ordinato usato per il rendering | 1\.000.000 | 1\.000.000 | 1,000,000+ |
Numero massimo di visualizzazioni buffer costanti in tutte le tabelle descrittori per fase shader | 14 | 14 | heap completo |
Numero massimo di visualizzazioni risorse shader in tutte le tabelle descrittori per ogni fase shader | 128 | heap completo | heap completo |
Numero massimo di visualizzazioni di accesso non ordinate in tutte le tabelle descrittori in tutte le fasi | 64 per i livelli di funzionalità 11.1+ 8 per il livello di funzionalità 11 |
64 | heap completo |
Numero massimo di sampler in tutte le tabelle descrittori per fase shader | 16 | 2048 | 2048 |
Le voci grassetto evidenziano miglioramenti significativi rispetto al livello precedente.
Esiste una restrizione aggiuntiva per l'hardware di livello 1 che si applica a tutti gli heaps e all'hardware di livello 2 che si applica agli heaps CBV e UAV, che tutte le voci dell'heap descrittore coperte dalle tabelle descrittori nella firma radice devono essere popolate con descrittori al momento in cui viene eseguito lo shader, anche se lo shader (forse a causa di branching) non necessita del descrittore. Non esiste alcuna restrizione per l'hardware di livello 3. Una mitigazione per questa restrizione è l'uso diligente dei descrittori Null.
Limiti invariabili
Il numero massimo di sampler in un heap visibile shader è 2048.
Il numero massimo di campioni statici univoci tra firme radice live è 2032 (che lascia 16 per i driver che necessitano dei propri campioni).