Для старых плат Raspberry Pi подготовлен GPU-драйвер с поддержкой API Vulkan

Представлен первый стабильный выпуск открытого графического драйвера RPi-VK-Driver 1.0, реализующего поддержку графического API Vulkan для старых плат Raspberry Pi, поставляемых с GPU Broadcom Videocore IV. Драйвер подходит для всех моделей плат Raspberry Pi, выпущенных до появления Raspberry Pi 4, — от «Zero» и «1 Model A» до «3 Model B+» и «Compute Module 3+». Драйвер разработан Мартином Томасом (Martin Thomas), инженером из компании NVIDIA, тем не менее, разработка велась как личный проект, не связанный с NVIDIA (драйвер разрабатывался последние два года в свободное от работы время). Код распространяется под лицензией MIT.

Так как возможностей GPU VideoCore IV, которым укомплектованы старые модели Raspberry Pi, недостаточно для полноценной реализации Vulkan, в драйвере реализовано лишь подмножество API Vulkan, которое охватывает не весь стандарт, но пытается следовать ему насколько это позволяет оборудование. Тем не менее, доступной функциональности достаточно для многих приложений и игр, а производительность заметно опережает драйверы OpenGL, благодаря более эффективному управлению памятью, многопоточной обработке команд GPU и прямому управлению операциями GPU. Драйвер также поддерживает такие возможности как MSAA (Multisample anti-aliasing), низкоуровневые шейдеры и счётчики производительности. Из ограничений отмечается отсутствие поддержки шейдеров GLSL, которые пока недоступны на данном этапе разработки.

Тем же автором опубликован порт игры Quake 3 для Raspberry Pi, выступающий в качестве демонстрации возможностей нового драйвера. Игра основана на движке ioQuake3,в который был добавлен модульный бэкенд рендеринга на базе Vulkan, изначально развиваемый проектом Quake III Arena Kenny Edition. При использовании нового драйвера в игре удалось добиться отрисовки более 100 кадров в секунду (FPS) на плате Raspberry Pi 3B+ при выводе с разрешением 720p.

Напомним, что организация Raspberry Pi Foundation совместно с компанией Igalia ведёт разработку своего Vulkan-драйвера, который находится на начальной стадии развития и будет готов для запуска некоторых реальных приложений во второй половине 2020 года. Указанный драйвер ограничен поддержкой графического ускорителя VideoCore VI, применяемого начиная с модели Raspberry Pi 4, и не поддерживает старые платы. По сравнению с OpenGL использование Vulkan позволяет добиться повышения производительности графических приложений и игр.

Источник: opennet.ru

Добавить комментарий