Megjött a Khronos Group első SPIR-V kiterjesztése

Az SPV_KHR_shader_ballot végre szabványosítja a Ballot elérését a Vulkan API-n keresztül.

Fél évvel a Vulkan API és egyben a SPIR-V grafikus API-hoz szánt specifikációjának megjelenése után a végre elérhetővé vált a Khronos Group első kiterjesztése a SPIR-V-hez, ami ráadásul hivatalos is, vagyis ez a szabványos módszer az adott funkció kihasználására.

Az SPV_KHR_shader_ballot igazából régebb óta bevetésre vár, de a konzorcium nem szerette volna addig elérhetővé tenni, amíg az API-val kapcsolatos fontos teendőket be nem fejezik, gondolva itt a különböző Vulkan verziók összevonására. Az is problémát jelentett, hogy hiába definiálta maga a SPIR-V nyelv ezt a funkciót, a GLSL nyelv Vulkanhoz specifikált verziójában még nem volt benne, vagyis az AMD gyártóspecifikus fordítókiegészítéseit kellett használni a megfelelő SPIR-V shader előállításához.

A Khronos Group újításával a jövőben erre nem lesz szükség, így szimplán a szabványos GLSL fordítóval használható lesz, amihez a legfrissebb Vulkan implementációhoz kapcsolódóan a SPIR-V 1.1-es verziójának a támogatása is szükséges. A Ballot egyébként rendkívül hasznos lesz a piac számára, mivel a nagyon egyenletes folyamatirányítási esetekben jelentősen növeli a végrehajtási tempót. Magát a kiterjesztést biztosan támogatni fogja az összes GCN-es Radeon, illetve elméletben nincs akadálya, hogy a Kepler, a Maxwell és a Pascal architektúrára épülő GeForce-ok is kezeljék, de a tényleges implementáció tekintetében az NVIDIA dönt arról, hogy mely hardvereken engedélyezik.

Persze a szabványos Ballot kihasználáshoz megfelelő SPIR-V shaderek is kellenek az adott alkalmazásba, vagyis például a Doom aktuális Vulkan módja ezt nem képes kihasználni, mert az AMD kiterjesztéseinek megfelelően és eszközeinek felhasználásával történt a fejlesztés. Ez persze átírható, de kérdés, hogy mennyi munkával járna, mivel az AMD Vulkan kiterjesztései elsődlegesen a konzolokhoz igazodnak, és azt tartják szem előtt, hogy a konzolokra írt kódokat a lehető leghatékonyabban lehessen PC-re hozni. Ezzel szemben Khronos Group a kiterjesztések kidolgozásánál ezt a tényezőt egyáltalán nem veszi számításba, vagyis sokkal általánosabban fejlesztik a rendszert csak a PC-piacra és PC-s gyártókra koncentrálva. Természetesen a jövőben a fejlesztőknek érdemes a szabványos út lehetőségét is beleszámolni a tervekbe.

Azóta történt

Előzmények

Hirdetés