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