Lo emocionante ayer en la tierra del regulador Vulkan de código destapado de Intel “ANV” para sistemas Linux fue la preparación de soporte empírico para montones de descriptores con la extensión VK_EXT_descriptor_heap. Hoy hay otro interesante crecimiento separado para este regulador Intel de código destapado: ¡los comandos generados por dispositivos Vulkan finalmente se fusionan!
En septiembre de 2024 estaba VK_EXT_device_generated_commands con Vulkan 1.3.296. Varios proveedores trabajaron en la funcionalidad “DGC” de los comandos generados por el dispositivo Vulkan para reemplazar la antigua extensión con prefijo del proveedor de NVIDIA. DGC permite que el dispositivo GPU genere una cantidad de comandos para los búferes de comandos en el dispositivo. En ese momento, se argumentó que esto era una de las mayores incorporaciones a la API de Vulkan desde el trazado de rayos.
Vulkan DGC permite que las aplicaciones registren comandos de sombreadores y los ejecuten directamente sin tener que retornar a la CPU. A su vez, esto puede eliminar los cuellos de botella en el rendimiento y, en normal, mejorar la eficiencia de los juegos/motores y otras aplicaciones que utilizan la extensión. VKD3D-Proton se encuentra entre los programas más destacados que desde entonces utilizan DGC.
El soporte DGC del regulador AMD Radeon RADV se fusionó en 2024. Volviendo a septiembre de 2024 fue esta solicitud de fusión de Mesa para unir soporte DGC al regulador Intel ANV. Ahora, un año y medio posteriormente, el código finalmente se fusiona.
Este soporte de VK_EXT_device_generated_commands para el regulador Intel Vulkan Linux se fusiona ayer del emanación de Mesa 26.2 del próximo trimestre. Recientemente, la compatibilidad con DGC se amplió a los gráficos de la era Skylake/Gen9, adicionalmente de realizar otras mejoras. Posteriormente de mucho trabajo, se solucionaron todos los problemas conocidos con estos 25 parches y el regulador Intel Vulkan está preparado con DGC como su postrero avance para los juegos Linux y el ecosistema de escritorio Linux de código destapado en normal.
