Valve AMD GPU uchun yangi shader kompilyatorini ochdi

Valve kompaniyasi taklif qildi Mesa ishlab chiquvchilarining pochta ro'yxatida yangi shader kompilyatori mavjud ACO Vulkan haydovchi RADV uchun, joylashishi mumkin OpenGL va Vulkan drayverlarida ishlatiladigan AMDGPU shader kompilyatoriga muqobil sifatida AMD grafik chiplari uchun RadeonSI va RADV.
Sinov tugallangach va funksionallik tugallangach, ACO asosiy Mesa tarkibiga kiritish uchun taklif qilinishi rejalashtirilgan.

Valve tomonidan taklif qilingan kod o'yin ilovalari shaderlari uchun iloji boricha optimal bo'lgan kod ishlab chiqarishni ta'minlashga, shuningdek, juda yuqori kompilyatsiya tezligiga erishishga qaratilgan. Mesa ning shader kompilyatori LLVM komponentlaridan foydalanadi, ular kerakli kompilyatsiya tezligini ta'minlamaydi va o'tmishda jiddiy xatolarga sabab bo'lgan boshqaruv oqimini to'liq nazorat qilishga imkon bermaydi. Bundan tashqari, LLVM-dan uzoqlashish yanada agressiv nomuvofiqlik tahlilini amalga oshirish va registr yukini yanada nozik nazorat qilish imkonini beradi, bu esa yanada samarali bajariladigan fayllarni yaratishga imkon beradi.

ACO C++ tilida yozilgan boʻlib, JIT kompilyatsiyasini hisobga olgan holda ishlab chiqilgan va tez iterativ maʼlumotlar tuzilmalaridan foydalanadi, bogʻlangan roʻyxatlar va def-use zanjirlar kabi koʻrsatkichga asoslangan tuzilmalardan qochadi. Oraliq kodni ko'rsatish butunlay asoslanadi SSA (Static Single Assignment) va shaderga qarab registrni oldindan aniq hisoblash orqali registrni ajratish imkonini beradi.

Hozirgi vaqtda diskret AMD GPU (dGPU VI+) da faqat piksel (fragment) va hisoblash shaderlari qo'llab-quvvatlanadi. Biroq, ACO allaqachon sinovdan o'tgan barcha o'yinlar uchun shaderlarni, shu jumladan Shadow of Tomb Raider va Wolfenstein II dan murakkab shaderlarni to'g'ri to'playdi. Sinov uchun taklif qilingan ACO prototipi kompilyatsiya tezligi bo'yicha AMDGPU shader kompilyatoridan deyarli ikki baravar tezroq va RADV drayverli tizimlarda ishlaganda ba'zi o'yinlarda FPS o'sishini namoyish etadi.

Valve AMD GPU uchun yangi shader kompilyatorini ochdi

Valve AMD GPU uchun yangi shader kompilyatorini ochdi

Manba: opennet.ru

a Izoh qo'shish