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)

Nvidia начиная с GeForce 400 series, AMD начиная с Radeon HD 5000 Series, Android начиная с Lollipop - примеч. перев.)

С чего бы это?

Deleted
()

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

Там был стрим с перезнтации. Чувак из Imagination Technologies говорил, что драйвер элементарный и что-то вроде «Мы его написали вдвоем за пару месяцев».

oh-la-la
()
Ответ на: комментарий от Deleted

Ну, вулкан обещают будет работать на GLES 3.1 железе. GLES 3.1 это подмножество OpenGL 4, в случае AMD оно поддерживается начиная с HD5000.

oh-la-la
()
Ответ на: комментарий от oh-la-la

Valve уже для интела написала вулканодрайвер. Пока что не в апстриме месы, но обещают скоро выложить.

༼ つ ◕_◕ ༽つ Praise Lord GabeN ༼ つ ◕_◕ ༽つ

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

Мне интересны высокие требования нвидии. Даже на моем инвалидском встроенном чипе от амуде 4.4 на блобе.

Deleted
()
Ответ на: комментарий от devl547

Я знаю, но он походу отдельный, а не в составе месы.

oh-la-la
()

опеньжоел как всегда вперде. Пока в его стандартизации участвовала МС - он почти не развивался. Сейчас опять какие-нибудь индусы или бравые ребята из невидии заскочат, и привет-пока открытый стандарт.

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

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

Да кто ж спорит.

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

и привет-пока открытый стандарт.

EXT_ в стандарт не входят)

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

Мне интересны высокие требования нвидии

Железо не тянет?
Двухсотая серия geforce умела только в opengl 3.3 и DX10.1, Четырёхсотая - opengl 4.5 и dx12

AMD умеет в OpenGL 4.4 начиная с 5xxx, но на поддержку DX12 положили болт и запилят только в GCN (7730 и выше).

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

Да драйвера им старые копать не охота, вот с печей 400 и пообещали...

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

не осветили потому, что слишком бурно обсуждали в GL кругах, да и сегодняшней презентации ждали - ибо не было понятно - возьмут ли текущий GL за основу для функций(как core/ARB, так и перспективные NV_command_list) или напишут всё с нуля (как и оказалось) - VK_XXX и vkXxx вместо GL_XXX и glXxx;)

то же касается и EGL - может, сменят на EVK, скажем. могут и банально обернуть, а могут и что-то добавить. GLX не столько устарела, сколько избыточна - по сети её сейчас мало гоняют.

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

DOTA 2 уже работает на альфа-драйвере для Intel

кстати - да - ибо Valve разрабатвает OSS VK драйвер для интела - сразу и тестят на своём же движке/игре. почти Apple/SGI ;)

azazello ★★★★
()

Пора пилить «SDL» для графических API. И назовём его UGA - Universal Graphical API

И потом будут говорить - «вот мол я скоро перееду на юга, там тепло и лампово» ::)

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

Хехе, API вконтактега

:))
о, у вконтагтега есть API! новость дня

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

Ценное мнение школолошек такое ценное.

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

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

Судя по настойчиво декларируемой низкоуровневости, поверх Vulkan просто будет написан слой поддержки OpenGL для существующих программ, после чего про него все забудут.

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

Нет не будет. AMD Mantle закрыт. OpenGL новых версий не будет! Metal на одной мобиле. Будет DirectX 12 на винде и Vulcan на всех остальных устройствах.

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

Ага универсально со всех сторон ::)

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

поверх Vulkan просто будет написан слой поддержки OpenGL для существующих программ, после чего про него все забудут.

в SPIR-V GLSL450 является базовым - так что это вполне возможно. причём, это Khronos может реализовать. да и принимая во внимание время жизни API после его смены, особенно на рынке DCC/CAD - напишут;)

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

А если железо не поддерживает вулкан, то толку от этой OpenGL прослойки? DE и софт останутся без аппаратного ускорения?

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

объявляем железо не поддерживающее OpenGL4 deprecated и выбрасываем на мороз

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

Ну, в слайдах какбы написано «Vulkan is not “low level” – just a better abstraction of modern hardware».

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

Всё железо его поддерживает уже очень давно. Причина появления Вулкана в том что OpenGL давным-давно не адекватен ему.

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

Ну, вулкан обещают будет работать на GLES 3.1 железе.

ещё не решили, что делать с bindless_texture - ибо многое железо его не держит - тот же NVidia Fermi, AMD NI(Radeon HD 6900 series), Intel HD 5k(Haswell) - и это только на десктопе. а фича-то правильная очень.

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

Вулкан не будет работать на железе без поддержки OpenGL 4.3 с compute shaders. Весьма странно слышать столько радости от людей, которые любят ставить линукс на все подряд. Или теперь иметь видеокарту старее 5000 серии радеонов среди линуксоидов считается моветоном?

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

Поставишь на неё свой старый XF86 и поедешь дальше, в никуда.

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

Так я об этом и говорю, что никуда от OpenGL не деться в ближайшем будущем.

xake
()

Отличная новость, отлично описано!

Спасибище!

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

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

Наверняка кто-либо напишет такой транслятор.

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

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

Почитать на сайте, как упростится драйвер вам не судьба?

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

Что за бред ты несешь? У кого старая карточка — будут пользоваться огл.

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

Почитать на сайте, как упростится драйвер вам не судьба?

Не нашел я там никакого даже драфта спецификации, нечего пока читать. Он упроститься если выкинуть поддержку OpenGL, но тогда такой драйвер не нужен.

FreeLiver ★★★
()
Последнее исправление: FreeLiver (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.