rilascio della realizzazione open source delle API OpenGL e Vulkan — . La prima versione della serie Mesa 20.1.0 è in stato sperimentale; una versione stabile 20.1.1 sarà rilasciata dopo la stabilizzazione finale del codice. In Mesa 20.1 full supporto di OpenGL 4.6 per GPU Intel (driver i965, iris) e AMD (radeonsi), supporto di OpenGL 4.5 per GPU AMD (r600) e NVIDIA (nvc0), OpenGL 4.3 per virgl (GPU virtuale per QEMU/KVM), così come supporto Vulkan 1.2 per schede Intel e AMD. per QEMU/KVM), e supporto per Vulkan 1.2 per schede Intel e AMD.
:
- una strato per la selezione del dispositivo attivo per l'API Vulkan nei sistemi con più GPU che supportano Vulkan, funzionante in modo simile a DRI_PRIME per OpenGL. Per selezionare il driver attivo e la GPU è prevista la variabile ambiente MESA_VK_DEVICE_SELECT (se non impostata viene usata DRI_PRIME).
- Nei driver i965 e iris per GPU Intel è stata aggiunta la supporto per i chip attesi l'anno prossimo basati sulla nuova microarchitettura .
- Nello sviluppo del driver Vulkan ANV per GPU Intel ottimizzazione per i chip basati sulla microarchitettura Icelake (Gen11), che consente l'uso di colori puri durante il texturing. Nei test di Dota2, il cambiamento ha ridotto il numero di operazioni di conversione dei colori del 95% e ha aumentato le prestazioni del 3,5%.
- Nel driver Vulkan ANV l'efficienza dell'uso della cache sui sistemi con chip Intel Ivybridge e Haswell. L'uso di test delle funzioni computazionali Vulkan dal set Geekbench 5 ha mostrato un incremento delle prestazioni del 330% su hardware Haswell GT3 (l'incremento è dovuto al fatto che la cache non veniva utilizzata in alcune condizioni).
- Nei driver per GPU Intel (, ) la modalità "buco nero" (estensione OpenGL INTEL_blackhole_render), che disabilita tutte le operazioni di rendering fornite dalla GPU, ma mantiene l'elaborazione delle operazioni OpenGL.
- Per i chip grafici Intel è stata portata una precedente aggiunta per i chip AMD a supporto della vettorizzazione , una rappresentazione intermedia (IR) senza tipo degli shader, mirata a lavorare al livello più basso, sotto GLSL IR e l'IR interno di Mesa. Da un punto di vista pratico, grazie a un'ottimizzazione migliore degli shader, il cambiamento ha permesso di aumentare le prestazioni di OpenGL e Vulkan in molti giochi su sistemi con GPU Intel. Ad esempio, nel gioco
Rise of the Tomb Raider c'è un incremento delle prestazioni del 3%, mentre in Shadow of the Tomb Raider è del 10%. - Nel backend per la compilazione degli shader “che viene sviluppato dalla Valve come alternativa al compilatore di shader LLVM, per GPU GFX9+ è stata aggiunta la supporto per il tipo shaderInt16, che consente l'uso di interi a 16 bit nel codice degli shader. Per
GPU AMD Navi (GFX10) l'applicazione dei motori NGG (Next-Gen Geometry) durante l'uso di shader di vertice e tessellazione. - Per GPU AMD Navi 12 e Navi 14 supporto per la modalità DCC visualizzata (Delta Color Compression), che permette di lavorare con dati di colore compressi durante l'organizzazione dell'output sullo schermo.
- supporto sperimentale NIR per il driver Gallium3D classico R600 (AMD Radeon HD 2000-6000) con supporto per shader geometrici, frammenti, vertici e shader.
- Nel driver Vulkan RADV una patch attraverso l'ottimizzazione della gestione della memoria aumenta le prestazioni dei giochi Id Tech sui sistemi con APU AMD.
- Nel driver Panfrost supporto sperimentale per OpenGL ES 3.0 e supporto per il rendering 3D per GPU Bifrost (Mali G31). È stata preparata una prima implementazione del compilatore di shader che supporta un set specifico di istruzioni interne per GPU Bifrost.
- Nel driver Vulkan TURNIP, sviluppato per GPU Qualcomm Adreno, supporto per shader geometrici e .
- Nel driver Gallium3D LLVMpipe, che fornisce il rendering software, il supporto per i tessellatori di shader.
- una grande di modifiche a glthread (implementazione multithread di OpenGL). Dopo queste modifiche, le prestazioni del simulatore di corse Torcs sono aumentate del 16% nella configurazione predefinita e del 40% con glthread attivo.
- l'opzione allow_draw_out_of_order (attivabile tramite driconf) per abilitare le ottimizzazioni per velocizzare le operazioni di rendering disordinate, tipiche di CAD. Con questa opzione attivata, nel test Viewperf11 Catia si osserva un'accelerazione del 7%.
- Aggiunte nuove estensioni OpenGL:
- per i965.
- per Iris.
- per radeonsi e nvc0.
- per gles2.
- per radeonsi
- per tutti i driver gallium.
- per tutti i driver gallium, così come per i915, i965 e swrast.
- per nvc0 (GM200+).
- per nvc0 (GM200+).
- Sono state aggiunte estensioni al driver Vulkan RADV (per schede AMD):
- per le schede GFX8+ usando il backend di compilazione degli shader "ACO"
- per le schede GFX8+ usando il backend di compilazione degli shader "ACO" (con eccezione del supporto per storageInputOutput16)
- per le schede GFX8+ usando il backend di compilazione degli shader "ACO" (con eccezione del supporto per storageInputOutput16)
- Nel driver Vulkan ANV (per schede Intel) sono state aggiunte estensioni:
Fonte: opennet.ru
