Panfrost вече има поддръжка на OpenGL 3.1 за графичните процесори на Mali

Разработчиците на Collabora не са спрели да работят и то е, че през последните месеци те дадоха много неща за разговор и този път не е изключение, защото наскоро обяви обявяването на внедряването в драйвера Panfrost на поддръжката на OpenGL 3.1 за графични процесори Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx) и графични процесори Bifrost (Mali G3x, G5x, G7x), както и поддръжка на OpenGL ES 3.0 за графични процесори Bifrost.

Тези промени очаква се да бъде включен в съобщението Mesa 21.0, който в момента е на етап кандидат за стартиране.

Трябва да се помни, че разработчиците на Collabora са работили дълго време върху внедряването на контролери за таблици и пример за това е миналото Контролер за плот от галий, който изпълнява междинен слой за организиране на OpenCL 1.2 и OpenGL 3.3 API за драйвери с поддръжка на DirectX 12 (D3D12) и че техният изходен код е издаден под лиценза MIT.

Предложеният контролер ви позволява да използвате Mesa на устройства които първоначално не са съвместими с OpenCL и OpenGL а също и като начална позиция за пренасяне на OpenGL / OpenCL приложения за работа на D3D12.

От страна на новия драйвер на Panfrost се забелязва, че GPU Midgard и Bifrost споделят общи структури от данни за фиксирани функции, но Bifrost използва принципно различен набор от инструкции, което затруднява синхронното внедряване на функционалност за GPU данни.

В архитектурно отношение Bifrost споделя повечето от своите структури с данни с фиксирана функция с Midgard, но въвежда нов набор от инструкции. Нашата работа по въвеждането на OpenGL ES 3.0 в Bifrost отразява това разделение.

Някои функции с фиксирана функция, като например създаване на обратна връзка и преобразуване, работеха без конкретна промяна на Bifrost, както вече направихме в Midgard. Други функции на шейдъра, като еднородни буферни обекти, се изискват „от нулата“ в компилатора Bifrost, задача, улеснена от зрялото междинно представяне на компилатора с първокласна поддръжка за изграждане.

Например фиксираните функции, вече реализирани за Midgardкато „обратна връзка за преобразуване“, могат да бъдат прехвърлени в Bifrost без промени, докато функции като множество цели за изобразяване (MRT) са ограничени до някои специфични промени в Bifrost.

В същото време други операции на шейдър, като обединени буферни обекти, изискват изпълнение на надраскване за компилатора на шейдъри Bifrost.

Това следва поддръжката на OpenGL ES 3.0 в Midgard, която се появи през лятото, както и първоначалната поддръжка на OpenGL ES 2.0, която наскоро дебютира за Bifrost. OpenGL ES 3.0 вече е тестван на Mali G52 в непрекъснатата интеграция на Mesa, постигайки 99.9% скорост на преминаване в съответните тестове на програмата за качество на DrawElements.

Обаче други функции, като множество цели за изобразяване, изискват специфичен код от Bifrost, като същевременно се възползват от друг код, споделен с Midgard. И все пак работата за втори път напредва много по-бързо, свидетелство за силата на споделените кодове. Но не е нужно да ограничавате суапа си само до графични процесори Panfrost; Драйверите с отворен код могат да споделят код между доставчици.

Освен това в съобщението се споменава, че част от дублирането на работата е избегната чрез използване на междинно представяне в компилатора, че заедно със споделения код значително ускорява развитието и че с този подход кодът може да се използва не само за семейство графични процесори, но и за различни контролери.

По-специално, разработчиците споменават, че за да внедри OpenGL на настолни системи, драйверът Panfrost изисква използването на готови за използване компоненти Mesa, докато собственият драйвер за Мали е ограничен само до поддържането само на OpenGL ES.

Поддръжката на OpenGL 3.1 за настолни компютри обаче е почти „безплатна“ за нас като контролер Mesa нагоре по веригата, като използва общата инфраструктура.

И накрая, ако се интересувате да научите повече за това за новото внедряване на Panfrost, предложено от разработчиците на Collabora, можете да проверите подробностите В следващия линк.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорник за данните: AB Internet Networks 2008 SL
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.