Asahi Linux ya es compatible con OpenGL 4.6 en los Apple M1 y M2
El equipo de desarrollo del proyecto Asahi Linux (el proyecto que tiene como objetivo soportar Linux en Apple Silicon Macs y del cual ya hemos hablado aquí en el blog) dio a conocer hace poco que ha logrado la compatibilidad del soporte para OpenGL 4.6 y OpenGL ES 3.2 en los chips Apple M1 y M2.
Es importante señalar que los controladores de gráficos nativos para los chips M1 de Apple solo implementan la especificación OpenGL 4.1, lo que hace que la compatibilidad con OpenGL 4.6 sea un avance notable.
Con este anunció el proyecto ha superado la implementación de Apple al ser compatible con OpenGL ES 3.1 y OpenGL 4.6, ya que Apple cambió su enfoque a su API de gráficos patentada «Metal», alejándose del soporte OpenGL
Los drivers que cumplen con 4.6/3.2 deben pasar más de 100.000 pruebas para garantizar la corrección. La lista oficial de controladores compatibles ahora incluye OpenGL 4.6 y ES 3.2 .
Si bien el proveedor aún no admite estándares gráficos como el OpenGL moderno, nosotros sí lo hacemos. Para este Día de San Valentín, queremos profesar nuestro amor por los estándares abiertos interoperables. Queremos liberar a los usuarios y desarrolladores del bloqueo, permitiendo que las aplicaciones se ejecuten en cualquier lugar que deseen sin puertos especiales.
Entre las características que se destacan del salto de OpenGL 4.1 a OpenGL 4.6, se mencionan las siguientes:
- Compatibilidad con aplicaciones modernas: La actualización promete una mayor compatibilidad con cargas de trabajo modernas de OpenGL, como Blender, Ryujinx y Citra, gracias a los controladores conformes a las últimas versiones.
- Conformidad con estándares: Los nuevos controladores han pasado más de 100,000 pruebas para garantizar la corrección y la conformidad con los estándares. Ahora están en la lista oficial de controladores conformes para OpenGL 4.6 y ES 3.2.
- Robustez y seguridad: Se enfatiza la importancia de la robustez y la seguridad en los controladores de gráficos, especialmente en entornos donde se manejan shaders no confiables, como los navegadores web.
- Optimización de rendimiento: A pesar de las nuevas características y la robustez agregada, se busca minimizar el impacto en el rendimiento, con estrategias como el uso eficiente de instrucciones y preámbulos para cálculos repetitivos.
- Compatibilidad con Mipmapping: Se detalla un problema específico relacionado con mipmapping y se propone un enfoque de solución que equilibra la eficiencia y la conformidad con los estándares.
Además, el consorcio Khronos ha reconocido la total compatibilidad del controlador abierto Asahi para la GPU AGX, presente en los chips Apple M1 y M2, con las especificaciones OpenGL 4.6 y OpenGL ES 3.2. Este controlador ha superado con éxito todas las pruebas del CTS (Kronos Conformance Test Suite) y está incluido en la lista de controladores certificados. La prueba se realizó en dispositivos Apple M1, M1 Pro/Max/Ultra, M2 y M2 Pro/Max en un entorno con la distribución Asahi Linux Fedora Remix, Mesa 24.0.0 y X.Org X Server (X11_GLX).
Es importante mencionar que los controladores propietarios originales de Apple para los chips M1 y M2 aún no están incluidos en la lista de controladores certificados por Khronos. Obtener este certificado permite al controlador abierto Asahi declarar oficialmente su compatibilidad con los estándares gráficos y utilizar las marcas comerciales asociadas de Khronos.
Dado que la GPU M1 carece de algunas capacidades de hardware necesarias para implementar OpenGL ES 3.2 y OpenGL 4.2, se han implementado funcionalidades faltantes utilizando funciones existentes. Por ejemplo, se han implementado sombreadores de geometría, teselación y retroalimentación de transformación mediante sombreadores informáticos, entre otros métodos.
Finalmente se menciona que en el futuro, el desarrollo de controladores abiertos para la GPU Apple AGX se enfocará en brindar soporte para la API de gráficos Vulkan. La implementación de Vulkan utilizará parte del código estándar ya probado que se utiliza en los controladores para OpenGL, lo que representa un paso adelante en el ecosistema de controladores abiertos para las GPU de Apple AGX.
Los paquetes de controladores listos para usar ya están disponibles en los repositorios de Fedora y se pueden utilizar en una versión especializada de Fedora llamada Asahi Remix 39, diseñada para su instalación en sistemas con chips Apple ARM.
Para instalarlos basta con ejecutar:
dnf upgrade --refresh
Si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.