Panfrost ja compta amb compatibilitat per a OpenGL 3.1 per GPU Mali

Els desenvolupadors de Collabora no han parat de treballar i és que en els últims mesos han donat molt que parlar i en aquesta ocasió no és l'excepció ja que recentment van donar a conèixer ell va anunciar de la implementació al controlador Panfrost de el suport OpenGL 3.1 per GPU Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx) i GPU Bifrost (Mali G3x, G5x, G7x), així com suport OpenGL ÉS 3.0 per GPU Bifrost.

aquests canvis s'esperen que siguin inclosos en el llançament de Taula 21.0, Que actualment es troba en l'etapa de candidat a llançament.

Cal recordar que els desenvolupadors de Collabora han treballat ja bastant temps sobre la implementació de controladors per a taula i un exemple d'això és el passat controlador Gallium per Taula, que implementa una capa intermèdia per organitzar l'API OpenCL 1.2 i OpenGL 3.3 sobre els controladors amb suport DirectX 12 (D3D12) i que el seu codi font es publica sota la llicència MIT.

El controlador proposat permet usar Taula en dispositius que inicialment no són compatibles amb OpenCL i OpenGL i també com una posició inicial per portar aplicacions OpenGL / OpenCL per treballar sobre D3D12.

Per la part de el nou controlador Panfrost, s'observa que GPU Midgard i Bifrost comparteixen estructures de dades comunes per a funcions fixes, però Bifrost fa servir un conjunt d'instruccions fonamentalment diferent, El que dificulta la implementació sincrònica de la funcionalitat per a les dades de GPU.

Arquitectònicament, Bifrost comparteix la majoria de les seves estructures de dades de funció fixa amb Midgard, però presenta un nou conjunt d'instruccions. El nostre treball per presentar OpenGL ÉS 3.0 en Bifrost reflecteix aquesta divisió.

Algunes característiques de funció fixa, com la creació d'instàncies i la retroalimentació de transformació, van funcionar sense cap canvi específic de Bifrost, ja que ja ho vam fer a Midgard. Altres característiques d'ombrejat, com a objectes de memòria intermèdia uniformes, requerien implementacions «des de zero» en el compilador Bifrost, una tasca facilitada per la representació intermèdia madura de l'compilador amb suport de construcció de primera classe.

Per exemple, les funcions fixes ja implementades per Midgard, Com la «retroalimentació de transformació», es poden transferir a Bifrost sense canvis, mentre que les funcions com Multiple Render Targets (MRT) estan limitades a alguns canvis específics de Bifrost.

A el mateix temps, altres operacions amb ombrejadors, com els objectes de memòria intermèdia unificats, requereixen una implementació des de zero per al compilador de ombrejadors Bifrost.

Això segueix a el suport d'OpenGL ÉS 3.0 en Midgard que va aterrar durant l'estiu, així com el suport inicial d'OpenGL ÉS 2.0 que va debutar recentment per Bifrost. OpenGL ÉS 3.0 ara es prova a Mali G52 en la integració contínua de Taula, aconseguint una taxa d'aprovació de l'99.9% en les proves corresponents de el Programa de Qualitat de DrawElements.

No obstant això, altres característiques, com múltiples objectius de renderitzat, requerien un codi específic de Bifrost mentre aprofitaven un altre codi compartit amb Midgard. Amb tot, el treball va avançar molt més ràpid la segona vegada, un testimoni de el poder de el codi compartit. Però no cal limitar l'intercanvi a només les GPU Panfrost; Els controladors de codi obert poden compartir codi entre proveïdors.

A més, en ell va anunciar s'esmenta que es va evitar part de la duplicació de treball mitjançant l'ús d'una representació intermèdia en el compilador, que, juntament amb el codi compartit, accelera significativament el desenvolupament i que amb aquest enfocament, el codi es pot usar no només per a una família de GPU, sinó també per a diferents controladors.

En particular, els desenvolupadors esmenten que per poder implementar OpenGL en sistemes d'escriptori, el controlador Panfrost va requerir de l'usar de components Taula preparats per utilitzar, mentre que el controlador propietari per a Mali només es limita a admetre només OpenGL ÉS.

No obstant això, la compatibilitat amb OpenGL 3.1 d'escriptori és gairebé «gratuïta» per a nosaltres com un controlador de Taula ascendent a l'aprofitar la infraestructura comuna.

Finalment, si estàs interessat en conèixer més a l'respecte sobre la nova implementació de Panfrost proposada pels desenvolupadors de Collabora, pots consultar els detalls en el següent enllaç.


Sigues el primer a comentar

Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: AB Internet Networks 2008 SL
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.