Цоллабора развија додатак за покретање ОпенЦЛ-а и ОпенГЛ-а на врху ДирецтКс-а

Цоллабора цомпани представљени нови Галлиум драјвер за Меса, који имплементира слој за организовање рада ОпенЦЛ 1.2 и ОпенГЛ 3.3 АПИ-ја на врху драјвера који подржавају ДирецтКс 12 (Д3Д12). Код објављено под лиценцом МИТ-а.

Предложени драјвер вам омогућава да користите Меса на уређајима који изворно не подржавају ОпенЦЛ и ОпенГЛ, а такође и као полазну тачку за пренос ОпенГЛ/ОпенЦЛ апликација за покретање на Д3Д12. За произвођаче ГПУ-а, подсистем омогућава пружање подршке за ОпенЦЛ и ОпенГЛ, ако су доступни само драјвери са подршком за Д3Д12.

Међу непосредним плановима су постизање потпуног проласка тестова компатибилности ОпенЦЛ 1.2 и ОпенГЛ 3.3, провера компатибилности са апликацијама и укључивање развоја у главни састав Месе. Развој се одвија заједно са Мицрософт инжењерима који развијају отворен алата Д3Д11Он12 за пренос игара са Д3Д11 на Д3Д12 и библиотеку Д3Д12ТранслатионЛаиер, који имплементира стандардне графичке примитиве на врху Д3Д12.

Имплементација укључује Галлиум драјвер, ОпенЦЛ компајлер, ОпенЦЛ рунтиме и НИР-то-ДКСИЛ схадер компајлер, који претвара посредни приказ НИР схадера који се користе у Меси у бинарни формат ДКСИЛ (ДирецтКс Интермедиате Лангуаге), подржан у ДирецтКс 12 и заснован на ЛЛВМ 3.7 битни код (ДирецтКс Схадер Цомпилер од Мицрософт-а је у суштини проширена форк ЛЛВМ 3.7). ОпенЦЛ компајлер је припремљен на основу развоја ЛЛВМ пројекта и алата СПИРВ-ЛЛВМ.

Извори са ОпенЦЛ екстензијама се компајлирају коришћењем цланг-а у ЛЛВМ средњи псеудокод (ЛЛВМ ИР), који се затим конвертује у средњу репрезентацију ОпенЦЛ кернела у СПИР-В формату. Језгра у СПИР-В представи се прослеђују у Меса, преводе у НИР формат, оптимизују и прослеђују у НИР-то-ДКСИЛ да би се генерисали рачунарски схадери у ДКСИЛ формату, погодни за извршавање на ГПУ-овима који користе ДирецтКс 12-базирано рунтиме.
Уместо Цловер-а, ОпенЦЛ имплементације која се користи у Меси, предложено је ново ОпенЦЛ рунтиме, омогућавајући директније конверзије у ДирецтКс 12 АПИ.

Цоллабора развија додатак за покретање ОпенЦЛ-а и ОпенГЛ-а на врху ДирецтКс-а

ОпенЦЛ и ОпенГЛ драјвери су припремљени помоћу Галлиум интерфејса који се налази у Меси, који вам омогућава да креирате драјвере без уласка у детаље специфичне за ОпенГЛ и преведете ОпенГЛ позиве у суштини ближе графичким примитивима на којима раде модерни ГПУ-ови. Галлиум драјвер, прихвата ОпенГЛ команде и када се користи НИР-то-ДКСИЛ преводилац
генерише бафере команди који се извршавају на ГПУ-у помоћу драјвера Д3Д12.

Извор: опеннет.ру

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