La nuova versione di Vulkan 1.2 è già stata rilasciata e queste sono le sue modifiche

Vulcano

Recentemente Khronos ha annunciato il rilascio della nuova versione della specifica Vulkan 1.2, che è definito come un'API per accedere alle capacità grafiche e di elaborazione della GPU. Le correzioni e le estensioni accumulate in due anni sono state incorporate nella nuova specifica.

Vulcano è notevole per semplificare drasticamente i driver, porta la generazione dei comandi GPU sul lato dell'applicazione, la possibilità di connettere i livelli di debug, unifica l'API per più piattaforme e utilizzare una rappresentazione del codice centrale precompilata per l'esecuzione sul lato GPU.

Principali novità di Vulkan 1.2

Lo risaltaL'implementazione del linguaggio di programmazione shader HLSL sviluppato da Microsoft per DirectX è pronto per l'uso generale (Il supporto HLSL in Vulkan consente di utilizzare solo shader HLSL in applicazioni basate su Vulkan e DirectX e semplifica anche la traduzione da HLSL a SPIR-V.)

Si propone di utilizzare il compilatore DXC standard per compilare shader, che è stato aperto da Microsoft nel 2017 e si basa sulla tecnologia LLVM. Il supporto Vulkan viene implementato tramite un backend separato, che consente di tradurre HLSL in una rappresentazione intermedia degli shader SPIR-V.

L'implementazione copre non solo tutte le funzionalità integrate di HLSL, inclusi tipi matematici, flussi di controllo, funzioni, insiemi, tipi di risorse, spazi dei nomi, Shader Model 6.2, strutture e metodi, ma consente anche l'uso di estensioni specifiche di Vulkan, come VKRay di NVRIA.

In modalità HLSL in cima a Vulkan, è stato possibile organizzare il lavoro di giochi come Destiny 2, Red Dead Redemption II, Assassin's Creed Odyssey e Tomb Raider.

anche si nota che la specifica SPIR-V 1.5 è stata aggiornata, che definisce una rappresentazione intermedia universale degli shader per tutte le piattaforme, che può essere utilizzata sia per la grafica che per il calcolo parallelo.

L'API principale di Vulkan include 23 estensioni per aumentare la produttività, migliorare la qualità di visualizzazione e semplificare lo sviluppo.

Da loro possiamo trovare Semaforo della sequenza temporale: che unificano la sincronizzazione con l'host e le code del dispositivo (consentono di fare con una primitiva per la sincronizzazione omnidirezionale tra dispositivo e host, senza utilizzare primitive VkFence e VkSemaphore separate).

Questi sono rappresentati da un valore a 64 bit in aumento monotono che può essere monitorato e aggiornato tramite più thread.

Versioni più brevi della specifica sono state preparate per piattaforme di destinazione tipiche, che semplifica il lavoro su piattaforme per le quali non sono ancora supportate tutte le estensioni e consente di rinunciare all'attivazione selettiva delle funzionalità principali dell'API Vulkan.

Delle altre modifiche che risaltano:

  • È proseguito il lavoro su un progetto di portabilità con altre API grafiche.
  • Possibilità di utilizzare tipi numerici negli shader con precisione ridotta
  • Opzione di layout di memoria conforme a HLSL
  • Risorse non associate (non associate) che rimuovono il limite alla quantità di risorse disponibili per gli shader utilizzando lo spazio virtuale condiviso della memoria di sistema e della memoria GPU
  • Un modello di memoria formale che definisce il modo in cui i thread paralleli possono accedere ai dati condivisi e alle operazioni di sincronizzazione
  • Indicizzazione dei descrittori per riutilizzare i descrittori di progetto in più shader;
  • Associazioni buffer.
  • Elenco completo delle estensioni aggiunto
  • Sono state aggiunte più di 50 nuove strutture e 13 funzioni

Infine tra i piani per il futuro spicca lo sviluppo di estensioni per machine learning, ray tracing, codifica e decodifica video, supporto per VRS (variable speed shading) e mesh shader.

Intel, AMD, ARM, Imagination Technologies e NVIDIA hanno già rilasciato i driver che supportano la nuova versione di Vulkan.

Mentre il caso di Tavolo (driver gratuiti), se offre il supporto Vulkan 1.2 per i driver RADV (Schede AMD) e driver ANV (Intel). Il supporto per Vulkan 1.2 è implementato anche nel debugger RenderDoc 1.6, LunarG Vulkan SDK e un set di Vulkan-Samples.


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile del trattamento: AB Internet Networks 2008 SL
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.