Одним из последних дополнений к выходящему в следующем квартале выпуску Mesa 23.3 этих компонентов графических драйверов пользовательского пространства с открытым исходным кодом является добавление поддержки расширения EGL explicit device.
Патч, первоначально написанный пять лет назад Адамом Джексоном (Adam Jackson) из Red Hat, был объединен для раскрытия расширения EGL_EXT_explicit_device. Роберт Фосс (Robert Foss) продолжил работу и добился слияния кода.
Расширение EGL explicit device предназначено для того, чтобы позволить игре/приложению указать желаемый GPU в случаях, когда несколько GPU устройств поддерживают EGL. Спецификация реестра Khronos описывает EGL_EXT_explicit_device следующим образом:
Система может поддерживать рендеринг на нескольких устройствах для одной и той же оконной системы. В этом случае реализация EGL должна выбирать устройство по умолчанию, основываясь на собственном дисплее.
Данное расширение позволяет приложению явно запрашивать устройство для рендеринга вместо устройства, используемого по умолчанию.
Оно отличается от EGL_EXT_platform_device тем, что EGL_EXT_platform_device использует EGLDeviceEXT вместо родного дисплея. Таким образом, EGL_EXT_platform_device позволяет осуществлять внеэкранный рендеринг в pbuffer или FBO, но не требует и не использует оконную систему, а значит, не позволяет использовать пиксмап или оконные поверхности.
Использование EGL_EXT_explicit_device с EGL_MESA_platform_surfaceless функционально идентично EGL_EXT_platform_device.
Изначально автором этого расширения EGL был Адам Джексон (Adam Jackson), а также разработчики с открытым исходным кодом Николай Хенле (Nicolai Haehnle) и Дэниел Стоун (Daniel Stone), а также Кайл Бреннеман (Kyle Brenneman) из графической команды NVIDIA по Linux.