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 ()
Последнее исправление: Shaman007 (всего исправлений: 2)
Ответ на: комментарий от OpenMind

это связано с совместимостью Vulkan и OpenGL и резкому переходу на новое API без совместимости со старым.

Че вы такой тугой? OpenGL никуда не денется.

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

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

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

Как новый «революционный» DirectX выходит, так сразу поливают помоями, а как OGL сменили - готовы очередь занимать

обычно бывает как раз наоборот(несмотря на то, что вендорлок)

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

новые yoba приложения не тянутся старыми картами, даже если они на старом api. gpu не cpu

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

«более близкая к железу архитектура» vs «широкий спектр устройств»

Не вижу противоречий. Абстракция останется. Просто будет ближе к железу.

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

да понятно что не денется. Но вот нового софта под него не будет.

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

ну это объясняет почему теперь когда хочешь запустить какую-то старую игруху, она работает либо очень медленно, либо не работает. Зачем тогда вообще это API лепить, даёшь писать сразу в 010101010101.

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

Vulkan это и есть Mantle, только там дополнительно наворотили к базовой библиотеке.

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

Vulcan тоже от вендоров не зависит. А вообще это переименованный Mantle, который приняли за стандарт.

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

Тоже верно. Vulcan анонсировали сначала как OpenGL Next. В итоге взяли Mantle и слегка адаптировали для железа, которое тянет GLES. Получается, что Vulcan - это Mantle, который сам по себе является следующим поколением OpenGL. Думаю, с учётом низкоуровневости API на нём можно сделать обёртку совместимости с OpenGL с минимальным оверхедом. Я даже не удвлюсь, если так в итоге и будет.

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

Есть же способ транслировать Glide в Direct3D и в OpenGL. Так что никаких проблем в трансляции OpenGL в Vulkan не вижу.

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

Написать Hello World на Python и помигать светодиодом на Verilog - задачи примерно одинаковой сложности.

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

OpenMind> Но почему не назвать его OpenGL 5

Vulkan это и есть OpenGL 5

OpenMind> и не сделать совместимым со старым OpenGL?

Для совмесимости есть старый OpenGL.

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

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

Есть инсайд, что разработчики Intel в этом так же по уши увязли. :) Так, что в течении года может быть готовый драйвер для Intel (Haswell и выше).

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

Есть же способ транслировать Glide в Direct3D и в OpenGL. Так что никаких проблем в трансляции OpenGL в Vulkan не вижу.

От Vulcan выиграет Wine так как теперь можно будет эффективно транслировать D3D в Vulcan (в OpenGL во многом это было трудно).

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

эффективно транслировать D3D в Vulcan

У них так медленно продвигается добавление нового функционала, что ждать в ближайшее время ИМХО не стоит. Интересен вопрос как с Вулканом будет в операционке от яблока. Один из доводов не принимать патчи галлиум-найн некросплатформенность галлиума. Если в os x не будет вулкана то может и не будут переписывать.

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

Один из доводов не принимать патчи галлиум-найн

найн вообще-то уже в апстриме месы. это наркоманы разработчики вайна копротивляются. но мужики не обращают на них внимания, и запилили wine-staging

anonymous
()

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

сначала подумал, что слова невидео-фанбоя. доскроллил - удивился. разве всё настолько плохо?

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

а что, оп — швабодко-фанбой а ты сам не в курсе дел разработки свободных драйверов?

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

а какая разница тогда для пользователя. в случае продолжения упоротости разрабов вайна, в дистрибутивах сами будут накатывать патч, или вовсе форкнут вайн, как libav vs ffmpeg

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

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

в догонку - оттуда же http://www.phoronix.com/scan.php?page=news_item&px=LunarG-Vulkan-AMA
- About 600 lines of code are needed to write a basic triangle program in Vulkan. However, much of that line count will be boiler-plate code that can be re-used or setup for the programmer by various libraries.
-...OpenGL is easier to use than Vulkan and will stay around for a while...

и да, интересное: - The day The Khronos Group releases the Vulkan specifications is when they plan to open-source their Intel Linux driver.

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

Ещё как слышали, ты лошадиные шоры с башки сними.
Кстати, почитал твой гуглоплюс.. Я жизни всей твоей вращенье придавал, а осью был мой детородный орган. И с матерью твоей я половой акт свершал, да в гроб загнал, однако, был неосторожен.

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

Утютю, игнорастушка объявился. Да ещё и беззвездный. Мне твой игнор, что слону Моська.

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