LINUX.ORG.RU

Khronos Group анонсирует Vulkan, наследника OpenGL

 , , , ,


1

6

Третьего марта на конференции GDC Khronos Group анонсировали новый стандарт графических API, кодовое название Vulkan. Данный шаг являлся весьма предсказуемым, поскольку практически все конкурирующие API уже начали идти навстречу многопоточной и более близкой к железу архитектуре - здесь можно упомянуть и Apple Metal, и DirectX 12, и AMD Mantle.

Vulkan представляет из себя написанный с нуля дизайн современного графического API для высокоэффективной отрисовки и вычислений на GPU. Планируется, что Vulkan будет работать на широком спектре устройств, начиная от рабочих станций и ноутбуков и заканчивая мобильными телефонами, игровыми консолями и встраиваемыми системами. Несмотря на то, что анонс уже произошёл и Vulkan разрабатывается Khronos Group и заинтересованными компаниями ещё с июня прошлого года, спецификация ещё не окончательна и стабилизируется предположительно к концу года. Обещано, что Vulkan будет работать на любом железе, поддерживающем OpenGL ES 3.1 и выше (Nvidia начиная с GeForce 400 series, AMD начиная с Radeon HD 5000 Series, Android начиная с Lollipop - примеч. перев.) Ожидать свершений на ниве графических драйверов и библиотек пока не стоит, но некоторые демо-сценарии могут появиться на GDC уже сейчас.

Хотя поддержка Vulkan ляжет тяжёлой ношей на плечи разработчиков Mesa, учитывая, что этой открытой библиотекой ещё не достигнута даже совместимость с OpenGL 4.0, поддержка API Vulkan обещает быть проще по архитектурным особенностям, нежели OpenGL. Упрощённая архитектура будет означать также облегчение портируемости между поставщиками различных GPU, уменьшение лишней нагрузки, а переход на SPIR-V (новое промежуточное представление и язык скомпилированных шейдеров, замена LLVM-IR) будет означать большой выигрыш в производительности. Также должен отметить, что упразднится деление на десктопный и урезанный мобильный (ES) API. EGL, а именно слой, который отвечает за абстракцию над оконной системой, будет интегрирован в Vulkan, но в спецификации этого пока ещё нет.

К вящей радости разработчиков игр, Vulkan также предоставляет многослойную архитектуру, в которой, к примеру, слои отладки и валидации могут быть загружены только при необходимости, появляется возможность контролировать GPU практически напрямую, отсутствуют архитектурные преграды к многопоточному исполнению и обеспечивается полная кросс-платформенность. NVIDIA, Epic Games, Oculus, Sony и ARM уже являются вендорами Vulkan и принимают участие в разработке и продвижении новой спецификации. Среди других сюрпризов можно отметить Valve и LunarG, которые уже сейчас работают над инструментами для загрузки слоёв нового API по требованию и ожидают от сообщества реакции на анонс.

От себя добавлю, что поддержку Vulkan в открытых драйверах мы увидим не раньше, чем через года два-три, а то и больше. И в этом смысле он довольно сильно отстаёт от своих конкурентов, которые уже сейчас обладают работающими реализациями своих API или близки к этому. Что и говорить о разработчиках графических тулкитов и движков, которые не смогут причаститься от нового детища Khronos Group ещё дольше. По крайней мере во многих нишах OpenGL остаётся незаменимым, а значит и для новой спецификации найдётся место под солнцем.

>>> Фороникс

★★★

Проверено: Shaman007 ()

Что самое интересное, Мантл игнорировали там, где он был бы наиболее полезен --- в статегиях. Тоже самое ждёт и Pukan.

anonymous ()

Ожидать свершений на ниве графических драйверов и библиотек пока не стоит

Хотя уже сейчас разработчики PowerVR тестируют дрова для пятого андроида... :)

http://youtu.be/KdnRI0nquKc

atrus ★★★★★ ()

Если я всё правильно понял, то вместо двух графических API - OpenGL и DirectX - будет 5: Apple Metal, DirectX 12, AMD Mantle, OpenGL, и, собственно, этот ваш Vulcan. Разработчиков драйверов можно поздравить.

asaw ★★★★★ ()
Ответ на: комментарий от asaw

Но только Vulkan API не имеет ограничений по железу/ОС.

Разработчиков драйверов можно поздравить.

Плюсую.

Adonai ★★★ ()
Ответ на: комментарий от atrus

Ну это я отнёс к экспериментам. Понятное дело, что вслепую разрабатывать спецификацию в Кроносе не стали бы.

А вообще, спасибо за ссылку, не знал, что уже такой прогресс.

Adonai ★★★ ()
Ответ на: комментарий от Adonai

Как это не имеет ограничений, когда в новости явно указано минимум одно ограничение?

asaw ★★★★★ ()
Ответ на: комментарий от asaw

Ты имеешь в виду «выше ES 3.1»? Я, скорее, о том, что он независим от вендоров и разработчиков OS.

Adonai ★★★ ()
Ответ на: комментарий от Adonai

В каком смысле? В чем разница с OpenGL? И кто такие «вендоры» в контексте этой темы? Вендоры - это вообще продавцы какой-нибудь газировки или мороженного на улице.

asaw ★★★★★ ()
Последнее исправление: asaw (всего исправлений: 1)
Ответ на: комментарий от asaw

OpenGL работает на Windows/Linux/Os X, на AMD/NVIDIA/Qualcomm/PowerVR. Mantle, Metal, DirectX не дотягивают до такого уровня.

Adonai ★★★ ()
Ответ на: комментарий от Adonai

Ну так о чем я и говорю: OpenGL не зависит ни от каких «вендоров». Чем тогда Vulcan лучше?

asaw ★★★★★ ()
Ответ на: комментарий от asaw

Я понял, ты не увидел в этом моём комментарии OpenGL. Это моя ошибка, OpenGL как стандарт такой же по широте. Vulkan не имеет деления на ES/Core, разве что.

Adonai ★★★ ()

Да что мне этот ваш Vulkan, мне нужно бы чтобы классика на OpenGL 1.2-1.4 работала.

mittorn ★★★★★ ()
Ответ на: комментарий от asaw

Mantle не будет. Он и так почти целиком вошел в Vulkan.

anonymous ()
Ответ на: комментарий от Adonai

Vulkan это и есть следующая версия OpenGL.

anonymous ()

Мне кажется, что получится достаточно хорошая штука. Только бы не забросили.

ee1337a ()
Ответ на: комментарий от mittorn

А ты думаешь, хоть кого-то из Khronos или разработчиков драйверов колышет, что там нужно какой-то тупорылой школолошке?

anonymous ()
Ответ на: комментарий от mittorn

мне нужно

можешь приступать к реализации

anonymous ()

ну это просто ВУЛКАН

anonymous ()
Ответ на: комментарий от asaw

вместо одного графических API - Direct3D - будет один Direct3D12

anonymous ()

ужос) с внедрением будет тягомотина(если вообще внедрят когда-нибудь в линукс и чтоб не тормозило)

Bad_ptr ★★★ ()

ТОЛСТО

О т себя добавлю, что поддержку Vulkan в открытых драйверах мы увидим не раньше, чем через года два-три, а то и больше.

Лолшто? Valve собственно презентовали его под линуксом на интеловской интеграшке уже под своим (хотя ясно, что писали его вероятно, LunarG) драйвером.

anonymous ()
Ответ на: ТОЛСТО от anonymous

Не вижу ссылки на исходники.

Adonai ★★★ ()

судя по архитектуре - его правильнее было бы назвать OpenCL for Graphics ;)

но, в целом - архитектурой доволен. и драйвера будут готовы быстро. а дебаггер - GLAVE - пишут под Linux ;)
а вот порог вхождения будет выше ;)

azazello ★★★ ()
Ответ на: комментарий от azazello

Почему считаешь, что выше? Пишут, что архитектура проще будет

Adonai ★★★ ()

От себя добавлю, что поддержку Vulkan в открытых драйверах мы увидим не раньше, чем через года два-три, а то и больше. И в этом смысле он довольно сильно отстаёт от своих конкурентов, которые уже сейчас обладают работающими реализациями своих API или близки к этому.

намного раньше из-за намного более простой архитектуры драйвера - т.к. почти все проверки вынесены из него(а state-machine можно использовать текущую с минимумом изменений). до конца года уже будут первые.

azazello ★★★ ()
Последнее исправление: azazello (всего исправлений: 1)
Ответ на: комментарий от Adonai

выше порог вхождения для начинающих писать на API - правильно подобрать параметры к функции сложнее, чем просто выбрать специальную нужную.

архитектура проще - то драйвера/экосистемы.

azazello ★★★ ()

EGL, а именно слой, который отвечает за абстракцию над оконной системой, будет интегрирован в Vulkan, но в спецификации этого пока ещё нет.

странно вы перевели - With being a cross-platform API, Vulkan will remain windowing system agnostic but Neil said it's not exactly clear yet how EGL specifically will tie into the new API. (это тот Neil, что Trevett, Khronos President)

и ссылку на презентацию добавили бы;)
https://www.khronos.org/assets/uploads/developers/library/2015-gdc/Khronos-Vu...

azazello ★★★ ()
Ответ на: комментарий от Adonai

Почему считаешь, что выше? Пишут, что архитектура проще будет

Архитектура будет проще и ближе к железу. Следовательно слой уровнем выше ляжет на разработчика. Большинство будут ждать когда за них этот слой напишут те, кто в этом понимает. А те, кто в этом понимает будут рады избавлению от большой прослойки железо-драйвер-«абстракция».

andreyu ★★★★★ ()

Очень хорошо, либы win-only богомерзкий d3d подох. А так, лишь бы кроссплатформенные стандарты были!

I-Love-Microsoft ★★★★★ ()
Ответ на: комментарий от I-Love-Microsoft

ты же знаешь, что никто ни с чего не уйдёт, и пишешь это похрюкивая и ухмыляясь

anonymous ()

Будет способ транслировать старые GL-вызовы в этот Vulkan?

nemyax ()

Интересно конечно, но теперь получится что драйверы должны будут и OpenGL уметь и Vulkan, т.е. наоборот грядет усложнение.

FreeLiver ★★★ ()

Хе-хе. А ведь где то год назад я писал что такой API необходим и он будет сделан рано или поздно.

ranka-lee ()
Ответ на: комментарий от asaw

Mantle уже не будет. OpenGL никому не нужен. А все остальные в целом одно и то же.

ranka-lee ()
Ответ на: комментарий от Adonai

Не вижу ссылки на исходники.

Исходники обещаны когда будет готова спецификация.

anonymous ()

От себя добавлю, что поддержку Vulkan в открытых драйверах мы >> увидим не раньше, чем через года два-три, а то и больше.

For helping out ISVs and game developers test out their initial Vulkan code, they developed their own Intel Vulkan GPU graphics driver for Linux that they intend to open-source.

http://www.phoronix.com/scan.php?page=news_item&px=Valve-Intel-Vulkan-Driver

urykhy ()

К вящей радости

Нашей радости нет предела¡

garik_keghen ★★★★★ ()
Ответ на: комментарий от ranka-lee

Але, тормоз, год назад его уже год как пилили.

anonymous ()
Ответ на: комментарий от azazello

Да, тут уже мои додумки по поводу того, что windowing system-aware спецификация у нас только EGL (GLX уже морально устарела), и выбрасывать её в ближайшее время не будут, а значит, она тем или иным образом войдёт в Vulkan. Прошу прощения.

Презентации ещё не видел на момент написания новости. Я вообще, честно говоря, очень удивлён был, что событие не осветили на ЛОРе, хотя со времени публикации прошло уже 2 дня

Adonai ★★★ ()
Ответ на: комментарий от urykhy

Спасибо. Эта новость уже после публикации произошла, не было возможности внести правку.

Adonai ★★★ ()
Ответ на: комментарий от anonymous

Ну так о чем речь тогда, если цитируешь реплику про свободные реализации? Ты ведь знаешь правила.

Время рассудит нас.

Adonai ★★★ ()
Ответ на: комментарий от FreeLiver

OpenGL теперь будет прослойкой поверх Vulkan.

anonymous ()
Ответ на: комментарий от Valkeru

Ну ранее была война стандартов в ещё больших масштабах, давно правда.

Satan_Klaus ★★ ()
Ответ на: комментарий от Satan_Klaus

Раньше и трава была зеленее. Но всё же определённая стандартизация должна быть.

Valkeru ★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.