Как стать автором
Обновить

Asahi выпустил первый совместимый с OpenGL ES 3.1 драйвер для Apple M1/M2

Время на прочтение2 мин
Количество просмотров1K

Проект Asahi по внедрению Linux в Apple Silicon добавил первый драйвер графического процессора для семейства чипов. Драйвер AGX Gallium3D теперь формально совместим с OpenGL ES 3.1.

Проект Asahi Linux для Mac впервые объявил о планах по выпуску специального драйвера графического процессора для Apple Silicon под управлением Linux ещё в 2022 году. Тогда же был проведён реверс-инжиниринг прототипа, который был «достаточно хорош для запуска реальных графических приложений и тестов».

После этого потребовались тысячи тестов, чтобы убедиться, что драйвер стабилен. Затем он прошёл 30-дневный период проверки, контролируемый органом по стандартизации Khronos. Проблем обнаружено не было.

Теперь драйверы доступны для процессоров M1, M1 Pro, M1 Max, M1 Ultra, а также чипов M2, M2 Pro, M2 Max и M2 Ultra. 

OpenGL ES 3.1 позволяет приложениям записывать данные в конкретное изображение, отображаемое на экране, что позволяет алгоритмам выполнять гибкую обработку. Также в ES 3.1 добавлены вычислительные шейдеры, обычно используемые для ускорения общих вычислений в графических приложениях. Например, 3D-игра может запускать физическое моделирование в вычислительном шейдере. Результаты моделирования затем можно использовать для рендеринга, устраняя задержки. Это позволяет игре работать быстрее.

Как отмечают в проекте Asahi, собственные драйверы Apple для Apple Silicon не соответствуют ни одному стандартному графическому API. В этом случае нет гарантии, что любое приложение, использующее доступные стандарты, такие как OpenGL ES, OpenGL или Vulkan, будет работать на компьютере с процессором M1 или M2.

Разработчики приводят реальный сценарий: «Сторонний MoltenVK накладывает подмножество Vulkan поверх проприетарных драйверов. Однако этим драйверам не хватает ключевой функциональности, что нарушает работоспособность приложений Vulkan».

Пользователи Asahi Linux на версиях Arch Linux или Fedora Linux могут обновить свои системы, чтобы получить соответствующую поддержку. Код AGX Gallium3D находится в исходной версии в Mesa, но драйвер ядра Apple DRM, написанный на Rust, продолжает работать вне дерева. Вероятно, пройдёт ещё некоторое время, прежде чем появится драйвер, соответствующий OpenGL 4.6 и Vulkan.

Новость опубликовала разработчик Алисса Розенцвейг. Она уже некоторое время работает над реверс-инжинирингом драйверов для графического процессора чипа M1. Розенцвейг ранее опубликовала на GitHub первые наработки по этому проекту. Она также известна тем, что возглавляет разработку свободного драйвера Panfrost и имеет большой опыт реверс-инжиниринга оригинальных драйверов от компании ARM, включая графические драйверы для Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx) и Bifrost (Mali G3x, G5x, G7x). Ранее Розенцвейг начала помогать Valve в разработке кода графических драйверов, чтобы улучшить адаптацию игр в Linux.

Между тем Linux 5.19, который выпустили в августе 2022 года, создали на MacBook Air с M2. Линус Торвальдс тогда упомянул, что использовал для формирования релиза ноутбук Apple на базе архитектуры ARM64 с Linux-окружением на базе дистрибутива Asahi Linux.

Теги:
Хабы:
Всего голосов 5: ↑5 и ↓0+5
Комментарии2

Другие новости

Истории

Ближайшие события

One day offer от ВСК
Дата16 – 17 мая
Время09:00 – 18:00
Место
Онлайн
Конференция «Я.Железо»
Дата18 мая
Время14:00 – 23:59
Место
МоскваОнлайн
Антиконференция X5 Future Night
Дата30 мая
Время11:00 – 23:00
Место
Онлайн
Конференция «IT IS CONF 2024»
Дата20 июня
Время09:00 – 19:00
Место
Екатеринбург
Summer Merge
Дата28 – 30 июня
Время11:00
Место
Ульяновская область