Met dank aan Valve engineer Timur Kristóf en andere betrokken open-source-ontwikkelaars, Mesa’s Radeon Vulkan-stuurprogramma”RADV”beëindigt 2021 met een hoogtepunt: mesh shaders zijn zojuist samengevoegd!
Zoals in oktober al werd opgemerkt, heeft RADV gewerkt aan mesh shaders, in ieder geval in experimentele vorm en gebruikmakend van NVIDIA’s NV_mesh_shader-extensie.
Mesh shaders bieden een compute-achtige shader-fase ter vervanging van de conventionele vertex/geometry-pijplijn. Dit werk zal echter naar verwachting”experimenteel”blijven totdat er een goede Vulkan cross-vendor-extensie rond mesh shaders is, aangezien het bekend is dat NV_mesh_shader slecht presteert op AMD-hardware waarvoor de extensie niet is ontworpen.
Voor ondersteuning van mesh shaders zijn Radeon RX 6000″RDNA2″GPU’s en nieuwer vereist voor ondersteuning. Deze experimentele mesh shaders-ondersteuning zal deel uitmaken van Mesa 22.0 die in maart als stabiel zal debuteren. Dit kan gunstig zijn voor VKD3D-Proton bij het in kaart brengen van Direct3D 12 mesh shaders bovenop Vulkan, maar nogmaals, de prestaties zullen naar verwachting niet optimaal zijn.
RADV-ontwikkelaars streven ook naar ondersteuning voor taakshaders, maar maken geen deel uit van de code-landing op oudejaarsavond van vandaag.
Gezien de experimentele staat, wordt op Mesa 22.0 de RADV mesh shader-ondersteuning met RDNA2 GPU’s alleen zichtbaar met de nieuwe”nv_ms”RADV_PERFTEST omgevingsvariabele vlag.
RADV landing mesh shaders is een prachtige manier om 2021 af te sluiten voor deze open-source Mesa Radeon Vulkan-driver waaraan veel is gewerkt door onder meer Valve, Red Hat, Google , en de open-sourcegemeenschap. Het zal interessant zijn om te zien waar RADV naartoe gaat in 2022 en hoe de prestaties zich ontwikkelen–zie de RADV vs. AMDVLK-benchmarks van gisteren voor een actuele kijk op de AMD Vulkan Linux-stuurprogrammaprestaties.