Valve отвори нов компајлер за шејдер за AMD графичките процесори

Вентил компанија предложи Поштенската листа за програмери на Mesa има нов компајлер за шејдер АЦО ШПРТ за Vulkan возач RADV, позициониран како алтернатива на компајлерот за шејдер AMDGPU што се користи во драјверите OpenGL и Vulkan RadeonSI и RADV за графички чипови AMD.
По завршувањето на тестирањето и финализирањето на функционалноста, ACO се планира да се понуди за вклучување во главниот состав на Mesa.

Предложениот код на Valve има за цел да обезбеди генерирање код што е што е можно пооптимално за шејдерите на апликациите за игри, како и постигнување многу голема брзина на компилација. Шејдер компајлерот на Mesa користи LLVM компоненти, кои не ја обезбедуваат саканата брзина на компилација и не дозволуваат целосна контрола на контролниот тек, што предизвикува сериозни грешки во минатото. Дополнително, оддалечувањето од LLVM овозможува имплементација на поагресивна анализа на несовпаѓање и пофина контрола на оптоварувањето на регистарот, што ви овозможува да генерирате поефикасни извршни датотеки.

ACO е напишана во C++, дизајнирана имајќи ја предвид компилацијата JIT и користи брзи итеративни структури на податоци, избегнувајќи структури базирани на покажувачи како што се поврзани списоци и синџири за дефинитивна употреба. Претставувањето на средното код е целосно засновано на ССА (Static Single Assignment) и овозможува распределба на регистарот со прецизно пресметување на регистарот во зависност од шејдерот.

Во моментов, само шејдерите за пиксели (фрагмент) и пресметките се поддржани на дискретни AMD графички процесори (dGPU VI+). Сепак, ACO веќе правилно собира шејдери за сите тестирани игри, вклучувајќи сложени шејдери од Shadow of the Tomb Raider и Wolfenstein II. Прототипот ACO предложен за тестирање е речиси двојно побрз од компајлерот за шејдер AMDGPU во однос на брзината на компилација и демонстрира зголемување на FPS во некои игри кога работи на системи со двигател RADV.

Valve отвори нов компајлер за шејдер за AMD графичките процесори

Valve отвори нов компајлер за шејдер за AMD графичките процесори

Извор: opennet.ru

Додадете коментар