Microsoft ha lanciato ufficialmente Agility SDK 1.619, introducendo importanti miglioramenti in DirectX 12, tra cui Shader Model 6.9 e miglioramenti DXR 1.2.
Aggiornamenti importanti in Microsoft Agility SDK: Shader Model 6.9, DXR 1.2 e funzionalità DX12 migliorate per GPU NVIDIA RTX, AMD Radeon e Intel Arc
Il nuovo Agility SDK 1.619 introduce tre aggiornamenti fondamentali: Shader Model 6.9, DXR 1.2 e vari miglioramenti per DX12. Di seguito i punti salienti:
- Shader Model 6.9 (tramite DXC 1.9.2602.16):
- Supporto per operazioni Long Vector.
- Introduzione delle istruzioni speciali a 16 bit float.
- Inclusione obbligatoria delle operazioni shader a 16 e 64 bit e delle operazioni wave.
- Esposizione HLSL per le funzionalità in DXR 1.2.
- DXR 1.2:
- Opacity Micromaps (già rilasciato in precedenza, con le nuove funzionalità SM 6.9 ora attivate).
- Riordino dell’esecuzione degli shader (SER).
- Funzionalità richieste dai clienti D3D:
- API di creazione della visualizzazione delle risorse aggiornate.
- Notifiche periodiche di rifinitura.
- Limiti della griglia di distribuzione ampliati.
- Risoluzione query cronologia CPU.
Un elemento di spicco di questa versione è Shader Model 6.9, che introduce funzionalità essenziali tra cui i Long Vectors, che consentono a HLSL di gestire vettori di lunghezza compresa tra 4 e 1024 elementi. Inoltre, sia le operazioni shader a 16 bit che a 64 bit sono ora requisiti standard.

Gli aggiornamenti per DXR (DirectX Ray Tracing) includono funzionalità significative come Opacity Micromaps e Shader Execution Reordering. L’inclusione di OMM migliora il modo in cui l’hardware gestisce la geometria sottoposta a test alpha, offrendo potenzialmente notevoli miglioramenti in termini di prestazioni rispetto ai metodi tradizionali che prevedono l’invocazione di shader AnyHit.

Microsoft ha già segnalato un incremento delle prestazioni fino a 2, 3 volte nei titoli con path-tracing che utilizzano OMM, con demo specifiche di NVIDIA che hanno mostrato miglioramenti di oltre il 60%.Ad esempio, una dimostrazione ha mostrato una scena che girava a 55 FPS senza OMM, mentre l’abilitazione di questa funzionalità ha aumentato le prestazioni a 90 FPS. Attualmente, il supporto completo per OMM è disponibile esclusivamente per le GPU NVIDIA RTX.

Un titolo significativo che sfrutta queste funzionalità è Alan Wake, rinomato per la sua forte dipendenza da geometrie alpha-tested. Il gioco può gestire un numero impressionante di triangoli e vertici, con le sue impostazioni di ray tracing elevate in grado di produrre fino a 36, 9 milioni di raggi per frame. In particolare, utilizzando SER e OMM, la RTX 4090 può renderizzare una scena in circa 10, 2 ms, rispetto ai precedenti 16, 8 ms.
Micromappe di opacità
Le Opacity Micromap (OMM) migliorano l’efficienza dell’elaborazione delle geometrie sottoposte a test alpha, riducendo la dipendenza dalle costose invocazioni dello shader AnyHit. Questa funzionalità è stata introdotta in precedenza, con un recente aggiornamento che ne ha ampliato l’esposizione a HLSL.
Riordino dell’esecuzione dello shader
Shader Execution Reordering (SER) migliora l’esecuzione degli shader consentendo alle applicazioni di organizzare il codice shader per una migliore elaborazione parallela. Questa funzionalità è ora uscita dalla fase di anteprima e le applicazioni possono richiedere il supporto dei dispositivi per il riordino.
Inoltre, Agility SDK 1.619 apporta miglioramenti essenziali all’API DirectX 12 Ultimate, risolvendo le precedenti limitazioni nelle visualizzazioni dei buffer. Questa versione consente agli sviluppatori di specificare le visualizzazioni dei buffer utilizzando offset e dimensioni dei byte, migliorando notevolmente l’usabilità dell’API.
Con l’evoluzione delle architetture GPU, sono emersi problemi con il modello di creazione delle viste di D3D12, in particolare per quanto riguarda i modelli di accesso ai buffer e la gestione dei descrittori. I nuovi aggiornamenti modernizzano questo aspetto dell’API per garantire che soddisfi le esigenze contemporanee.
Il modello aggiornato consente la misurazione delle visualizzazioni del buffer in offset e dimensioni di byte, insieme a una migliore gestione degli errori
HRESULTanziché affidarsi esclusivamente alla convalida del livello di debug.Notifiche periodiche di rifinitura
Nuove notifiche di trim a livello di kernel sono integrate nel runtime D3D12, facilitando la ricezione di avvisi da parte delle applicazioni su quando trimmare la residenza senza richiedere il supporto di nuovi driver.
Limite di spedizione 1D aumentato
Questo aggiornamento aumenta la dimensione massima di 1-Dimensional Dispatch/Dispatch Mesh oltre il precedente limite di 65535, adattandosi alle capacità dell’hardware contemporaneo.
D3D12_FEATURE_DATA_D3D12_OPTIONS22. Max1DDispatchSizeD3D12_FEATURE_DATA_D3D12_OPTIONS22. Max1DDispatchMeshSizeRisoluzione query cronologia CPU
Un Query Heap di recente introduzione consente la risoluzione sulla timeline della CPU, riducendo al minimo il sovraccarico non necessario durante le operazioni della GPU. Questa funzionalità introduce
ID3D12Device15::CreateQueryHeap1eID3D12Device15::ResolveQueryData.
Supporto del fornitore GPU per Microsoft Agility SDK 1.619
Il supporto per Agility SDK 1.619 è ora disponibile per tutti e tre i principali fornitori di GPU, sebbene con diversi livelli di compatibilità in base all’architettura del prodotto.
Panoramica del supporto hardware
| Fornitore indipendente (IHV) | Link per i conducenti |
| AMD | AMD Software: Adrenalin Edition 26.2.1 AMD Software: AgilitySDK Developer Preview Edition 25.30.21.01 |
| Intel | Grafica Intel Arc – Windows |
| NVIDIA | Driver NVIDIA ufficiali | NVIDIA o tramite l’app NVIDIA per aggiornamenti automatici. |
NVIDIA segnala che l’intera linea di GPU RTX è compatibile con gli ultimi miglioramenti dell’SDK. Per DXR 1.2, l’accelerazione hardware di OMM si applica alle serie RTX 40 e successive, mentre SER è supportata sulla stessa generazione. Le GPU più vecchie forniscono solo l’emulazione software per le funzionalità di OMM.
Sul fronte AMD, il supporto comprende le serie RX 7000, RX 900 e Ryzen AI 300/400, a dimostrazione della compatibilità con le architetture RDNA. Tuttavia, il supporto completo per DXR 1.2 e Shader Model 6.9 è specifico per le GPU RDNA 4 (Radeon RX 9000).
Intel afferma che la sua Arc B-Series (Battlemage) supporterà tutte le funzionalità dell’SDK. Inoltre, alcune funzionalità D3D, come VPblit 3DLUT, sono applicabili alle CPU Lunar Lake.
In particolare, mentre gli OMM sono esclusivi della serie RTX 40 e superiori, SER presenta funzionalità di riordino su NVIDIA RTX 40+ e Intel Arc B-Series, mentre non è disponibile alcuna funzionalità di riordino sulle GPU della serie RX 9000.
| AMD | Intel | NVIDIA | |
| Vettore lungo | Serie AMD Radeon RX 9000 | Grafica Intel Arc serie B | Tutto l’hardware RTX |
| Speciali a virgola mobile a 16 bit | Serie AMD Radeon RX 9000 | Grafica Intel Arc serie B | Tutto l’hardware RTX |
| Micromappe di opacità (OMM) | N / A | N / A | Tutto l’hardware RTX. Accelerato tramite hardware su RTX 4xxx+, emulato sui modelli precedenti. |
| Riordino dell’esecuzione degli shader (SER) | La serie AMD Radeon RX 9000 supporta le API ma non implementa il riordino. | Le GPU RTX 4xxx+ supportano l’API ed eseguono il riordino. | Scheda grafica Intel Arc serie B. Limite attuale di 64k, destinato ad aumentare con i driver futuri. |
| API di creazione della visualizzazione delle risorse riviste | AMD Radeon RX serie 7000 e 9000 | Grafica Intel Arc serie B | Tutto l’hardware RTX |
| Notifiche periodiche di rifinitura | N / A | Grafica Intel Arc serie B | Tutto l’hardware RTX |
| Limite della griglia di distribuzione aumentato | AMD Radeon RX serie 7000 e 9000. Elaborazione UINT_MAX, mesh 64k. | Scheda grafica Intel Arc serie B. Limite attuale di 64k, aumenti previsti nei driver futuri. | Tutto l’hardware RTX. Limite attuale di 64k, aumenti previsti nei driver futuri. |
| Risoluzione query cronologia CPU | AMD Radeon RX serie 7000 e 9000 | Grafica Intel Arc serie B | Tutto l’hardware RTX |
| Barriere di recinzione (anteprima) | AMD Radeon RX serie 7000 e 9000 | Grafica Intel Arc serie B | Contattare l’ufficio relazioni con gli sviluppatori per avere accesso ai driver in fase di sviluppo. |
| VPblit 3DLUT (anteprima) | Schede grafiche AMD Radeon RX serie 7000 e processori Ryzen AI serie 300/400 con grafica integrata | Processori Intel Core Ultra, piattaforme Lunar Lake e Panther Lake | Per informazioni dettagliate, contattare l’ufficio relazioni con gli sviluppatori. |