Valve AMD GPU үшін жаңа шейдер компиляторын ашты

Valve компаниясы ұсынды Mesa әзірлеушісінің тарату тізімінде жаңа шейдер компиляторы бар ACO Vulkan драйвері RADV үшін, позициялық OpenGL және Vulkan драйверлерінде AMD графикалық чиптері үшін RadeonSI және RADV пайдаланылатын AMDGPU шейдер компиляторына балама ретінде.
Тестілеу аяқталып, функционалдылық аяқталғаннан кейін ACO негізгі Mesa құрамына қосу үшін ұсынылады деп жоспарлануда.

Valve ұсынған коды ойын қолданбаларының шейдерлері үшін мүмкіндігінше оңтайлы код генерациясын қамтамасыз етуге, сондай-ақ өте жоғары компиляция жылдамдығына қол жеткізуге бағытталған. Mesa-ның шейдер компиляторы LLVM құрамдастарын пайдаланады, олар қажетті компиляция жылдамдығын қамтамасыз етпейді және басқару ағынын толық басқаруға мүмкіндік бермейді, бұл бұрын күрделі қателер туғызған. Сонымен қатар, LLVM-ден алыстау неғұрлым агрессивті сәйкессіздікті талдауды және регистр жүктемесін жақсырақ басқаруды жүзеге асыруға мүмкіндік береді, бұл сізге тиімдірек орындалатын файлдарды жасауға мүмкіндік береді.

ACO C++ тілінде жазылған, JIT компиляциясын ескере отырып жасалған және байланыстырылған тізімдер мен деф-пайдалану тізбектері сияқты көрсеткішке негізделген құрылымдарды болдырмай, жылдам итеративті деректер құрылымдарын пайдаланады. Аралық кодты ұсыну толығымен негізделген S.S.A. (Static Single Assignment) және шейдерге байланысты регистрді дәл алдын ала есептеу арқылы тізілімді бөлуге мүмкіндік береді.

Қазіргі уақытта дискретті AMD GPU (dGPU VI+) құрылғыларында тек пиксельдік (фрагмент) және есептеу шейдерлеріне қолдау көрсетіледі. Дегенмен, ACO қазірдің өзінде сынақтан өткен барлық ойындарға, соның ішінде Shadow of Tomb Raider және Wolfenstein II күрделі шейдерлерін дұрыс жинайды. Тестілеуге ұсынылған ACO прототипі компиляция жылдамдығы бойынша AMDGPU шейдер компиляторынан екі есе дерлік жылдам және RADV драйвері бар жүйелерде жұмыс істегенде кейбір ойындарда FPS жоғарылауын көрсетеді.

Valve AMD GPU үшін жаңа шейдер компиляторын ашты

Valve AMD GPU үшін жаңа шейдер компиляторын ашты

Ақпарат көзі: opennet.ru

пікір қалдыру