stringtranslate.com

Вулкан

Vulkan — это низкоуровневый, малонакладный кроссплатформенный API и открытый стандарт для 3D-графики и вычислений . [15] [16] [17] Он был призван устранить недостатки OpenGL и предоставить разработчикам больше контроля над графическим процессором. Он разработан для поддержки широкого спектра графических процессоров, центральных процессоров и операционных систем, а также для работы с современными многоядерными центральными процессорами.

Обзор

Vulkan нацелен на высокопроизводительные приложения 3D-графики в реальном времени, такие как видеоигры и интерактивные медиа , а также высокопараллельные вычисления . Vulkan призван обеспечить более высокую производительность и более эффективное использование CPU и GPU по сравнению со старыми API OpenGL и Direct3D 11. Он делает это, предоставляя API значительно более низкого уровня для приложения, чем старые API, который больше напоминает то, как работают современные GPU.

Vulkan сопоставим с Metal API от Apple и Direct3D 12 от Microsoft . Помимо более низкого использования ЦП, Vulkan разработан, чтобы позволить разработчикам лучше распределять работу между несколькими ядрами ЦП . [18]

Vulkan был впервые анонсирован некоммерческой организацией Khronos Group на GDC 2015. [13] [19] [20] Первоначально API Vulkan назывался Khronos « инициативой OpenGL следующего поколения » или «OpenGL next» [21] , но использование этих названий было прекращено, когда было анонсировано «Vulkan». [22]

Vulkan создан на основе компонентов API Mantle компании AMD , который был передан компанией AMD компании Khronos с целью предоставить Khronos основу для начала разработки API низкого уровня, который они могли бы стандартизировать в отрасли. [13]

Функции

OpenGL и Vulkan — оба API рендеринга. В обоих случаях графический процессор выполняет шейдеры , а центральный процессор выполняет все остальное.

Vulkan призван обеспечить ряд преимуществ по сравнению с другими API, а также со своим предшественником OpenGL . Vulkan предлагает меньшие накладные расходы, более прямой контроль над графическим процессором и меньшее использование центрального процессора. [20] Общая концепция и набор функций Vulkan аналогичны концепциям, представленным в Mantle и позднее принятым Microsoft с Direct3D 12 и Apple с Metal .

Предполагаемые преимущества Vulkan по сравнению с API предыдущего поколения включают в себя следующее:

Кроссплатформенный

Vulkan доступен на нескольких современных операционных системах и архитектурах [ требуется ссылка ] и предоставляет единый API как для настольных, так и для мобильных графических устройств, тогда как ранее они были разделены между OpenGL и OpenGL ES соответственно. Как и OpenGL, и в отличие от Direct3D 12, API Vulkan не привязан к одной ОС или форм-фактору устройства. Vulkan изначально работает на Android , Linux , BSD Unix , QNX , Haiku , [23] Nintendo Switch , Raspberry Pi , Stadia , Fuchsia , Tizen и Windows 7 , 8 , 10 и 11. MoltenVK предоставляет свободно лицензированную [24] [25] [26] стороннюю поддержку для macOS , iOS и tvOS, обертываясь над API Metal от Apple. [27]

Меньше использования ЦП

Vulkan снижает нагрузку на ЦП за счет использования пакетной обработки и других низкоуровневых оптимизаций, тем самым снижая нагрузку на ЦП и оставляя его свободным для выполнения большего количества вычислений или рендеринга, чем это было бы возможно в противном случае. [28] [29]

Многопоточный дизайн

Direct3D 11 и OpenGL 4 изначально были разработаны для использования с одноядерными процессорами и получили только расширение для выполнения на многоядерных процессорах. Даже когда разработчики приложений используют расширения, эти API обычно плохо масштабируются на многоядерных процессорах. Vulkan предлагает улучшенную масштабируемость на многоядерных процессорах благодаря модернизированной архитектуре потоков. [30] [31]

Предварительно скомпилированные шейдеры

OpenGL использует высокоуровневый язык GLSL для написания шейдеров , что заставляет каждый драйвер OpenGL реализовывать собственный компилятор для GLSL. Затем он выполняется во время выполнения приложения для перевода шейдеров программы в машинный код графического процессора. Напротив, драйверы Vulkan должны принимать шейдеры, уже переведенные в промежуточный двоичный формат, называемый SPIR-V (Standard Portable Intermediate Representation), аналогичный двоичному формату, в который шейдеры HLSL компилируются в Direct3D . Благодаря разрешению предварительной компиляции шейдеров повышается скорость инициализации приложения, и для каждой сцены можно использовать большее количество шейдеров. Драйверу Vulkan требуется только выполнить специфическую для графического процессора оптимизацию и генерацию кода, что упрощает обслуживание драйвера и потенциально уменьшает размер пакетов драйверов. [32] Разработчики приложений теперь также могут легче скрывать собственный код шейдера, поскольку шейдеры не хранятся непосредственно в виде исходного кода, однако предоставляются инструменты, которые могут декомпилировать SPIR-V в человекочитаемый высокоуровневый код. [31] [17]

Другие

OpenGL против Vulkan

В 2016 году NVIDIA заявила, что «OpenGL по-прежнему является отличным вариантом для многих случаев использования, поскольку он гораздо менее сложен и требует меньше обслуживания, чем Vulkan, при этом во многих случаях обеспечивая отличную общую производительность». [35]

AMD заявляет, что «Vulkan поддерживает управление, близкое к металлу, что обеспечивает более высокую производительность и лучшее качество изображения в Windows 7, Windows 8.1, Windows 10 и Linux. Никакой другой графический API не предлагает такого же мощного сочетания совместимости с ОС, функций рендеринга и эффективности оборудования». [36]

Версии

Вулкан 1.0

Vulkan 1.0 был выпущен в феврале 2016 года.

Вулкан 1.1

На SIGGRAPH 2016 Khronos объявил, что Vulkan получит поддержку автоматических функций multi-GPU, аналогичных тем, что предлагаются в Direct3D 12. [37] Поддержка multi-GPU, включенная в API, устраняет необходимость в SLI или Crossfire, для которых требуются видеокарты одной модели. Вместо этого API multi-GPU позволяет API разумно распределять рабочую нагрузку между двумя или более совершенно разными GPU. [38] Например, интегрированные GPU, включенные в CPU, могут использоваться в сочетании с высокопроизводительным выделенным GPU для небольшого повышения производительности.

7 марта 2018 года Khronos Group выпустила Vulkan 1.1. [39] Это первое крупное обновление API стандартизировало несколько расширений, таких как многовидовой режим, группы устройств, кросс-процессный и кросс-API-совместный доступ, расширенные вычислительные функции, поддержка HLSL и поддержка YCbCr. [40] В то же время оно также обеспечило лучшую совместимость с DirectX 12, явную поддержку нескольких GPU, поддержку трассировки лучей [41] [42] и заложило основу для следующего поколения GPU. [43] Наряду с Vulkan 1.1, SPIR-V был обновлен до версии 1.3. [40]

Вулкан 1.2

15 января 2020 года Khronos Group выпустила Vulkan 1.2 [44] . [45] Это второе крупное обновление API интегрирует 23 дополнительных широко используемых проверенных расширения Vulkan в базовый стандарт Vulkan. Некоторые из наиболее важных функций — это «семафоры временной шкалы для легко управляемой синхронизации», «формальная модель памяти для точного определения семантики синхронизации и операций с памятью в разных потоках» и «индексация дескрипторов для обеспечения повторного использования макетов дескрипторов несколькими шейдерами». Дополнительные функции Vulkan 1.2 повышают его гибкость при реализации других графических API поверх Vulkan, включая «стандартную компоновку единого буфера», «скалярную компоновку блока» и «отдельное использование трафарета». [46]

Вулкан 1.3

25 января 2022 года Khronos Group выпустила Vulkan 1.3. [47] Это третье крупное обновление API интегрирует 23 дополнительных широко используемых проверенных расширения Vulkan в базовый стандарт Vulkan. [48] Vulkan 1.3 фокусируется на снижении фрагментации, делая новые функции необязательными для того, чтобы устройство считалось совместимым с Vulkan 1.3. [47] [49] Новые функции в Vulkan 1.3 включают динамический рендеринг, дополнительное динамическое состояние, улучшенный API синхронизации и профили устройств.

Планируемые функции

При выпуске OpenCL 2.2 группа Khronos объявила, что OpenCL будет конвергировать с Vulkan, где это возможно, чтобы обеспечить гибкость развертывания программного обеспечения OpenCL через оба API. [50] [51] Это было теперь продемонстрировано в Premiere Rush от Adobe с использованием компилятора с открытым исходным кодом clspv [52] для компиляции значительных объемов кода ядра OpenCL C для запуска в среде выполнения Vulkan для развертывания на Android. [53]

История

Группа Khronos начала проект по созданию графического API следующего поколения в июле 2014 года с установочной встречи в Valve . [54] На SIGGRAPH 2014 проект был публично анонсирован с призывом к участию. [13]

По данным Бюро по патентам и товарным знакам США, регистрация товарного знака Vulkan была произведена 19 февраля 2015 года. [55]

Vulkan был официально назван и анонсирован на Game Developers Conference 2015, хотя предположения и слухи, связанные с новым API, существовали и раньше и назывались « glNext ». [56]

2015

В начале 2015 года LunarG (финансируемая Valve ) разработала и продемонстрировала драйвер Linux для Intel, который обеспечил совместимость с Vulkan на интегрированной графике серии HD 4000, несмотря на то, что драйверы Mesa с открытым исходным кодом не были полностью совместимы с OpenGL 4.0 до конца того же года. [57] [58] Все еще существует возможность [59] поддержки Sandy Bridge, поскольку он поддерживает вычисления через Direct3D11.

10 августа 2015 года Google объявила, что будущие версии Android будут поддерживать Vulkan. [60] Android 7.x «Nougat» запустил поддержку Vulkan 22 августа 2016 года. Android 8.0 «Oreo» имеет полную поддержку.

18 декабря 2015 года Khronos Group объявила, что версия 1.0 спецификации Vulkan почти завершена и будет выпущена, когда появятся соответствующие драйверы. [20]

2016

Полная спецификация Vulkan и открытый исходный код Vulkan SDK были выпущены 16 февраля 2016 года. [1]

2018

26 февраля 2018 года Khronos Group объявила, что API Vulkan стал доступен всем на macOS и iOS через библиотеку MoltenVK , которая позволяет Vulkan работать поверх Metal . [61] Другие новые разработки были показаны на SIGGRAPH 2018. [62] Ранее MoltenVK был проприетарным и коммерчески лицензированным решением, но Valve заключила соглашение с разработчиком Brenwill Workshop Ltd об открытии исходного кода MoltenVK под лицензией Apache 2.0, и в результате библиотека теперь доступна на GitHub. Valve также объявила, что с 26 февраля 2018 года Dota 2 может работать на macOS с использованием API Vulkan, который основан на MoltenVK. [63]

2019

25 февраля 2019 года было объявлено о создании рабочей группы Vulkan Safety Critical (SC), которая будет внедрять ускорение Vulkan GPU в отраслях, критически важных для безопасности. [64]

Облачный игровой сервис Google Stadia использовал Vulkan на серверах Linux с графическими процессорами AMD . [65]

2020

15 января 2020 года вышел Vulkan 1.2.

Наряду с выпуском Vulkan 1.2 группа Khronos опубликовала сообщение в блоге, в котором говорилось, что поддержка HLSL в Vulkan достигла статуса «готова к производству», учитывая улучшения в компиляторе DXC от Microsoft и компиляторе glslang от Khronos, а также новые функции в Vulkan 1.2, которые улучшают поддержку HLSL. [66]

3 февраля 2020 года Raspberry Pi Foundation объявила, что работает над драйвером Vulkan с открытым исходным кодом для своего Raspberry Pi , популярного одноплатного компьютера. [67] 20 июня 2020 года графический инженер сообщил, что после двух лет работы он создал драйвер, способный запускать VkQuake3 со скоростью более 100 кадров в секунду на этом небольшом компьютере. [68]

17 марта 2020 года Khronos Group выпустила расширения Ray Tracing , основанные на фирменном расширении Nvidia, с некоторыми крупными расширениями и множеством мелких изменений, которые, в свою очередь, были основаны на API OptiX от Nvidia. [ 69] [70] 23 ноября 2020 года эти расширения Ray Tracing были завершены. [71]

24 ноября 2020 года Raspberry Pi Foundation объявила, что их драйвер для Raspberry Pi 4 совместим с Vulkan 1.0. [72]

2022

25 января 2022 года вышел Vulkan 1.3.

1 марта 2022 года был выпущен Vulkan SC 1.0, который принес графику и вычисления Vulkan для отраслей, критически важных для безопасности, и при этом был основан на стандарте Vulkan 1.2. [73]

1 августа 2022 года Raspberry Pi Foundation объявила, что их драйвер для Raspberry Pi 4 совместим с Vulkan 1.2. [74]

1 сентября 2022 года был выпущен Mesh Shading для Vulkan. [75] [76]

2024

Khronos Group анонсировала новую дорожную карту Vulkan 2024 25 января 2024 года. [77] Khronos Group анонсировала новое расширение декодирования видео AV1 1 февраля 2024 года. [78]

Поддержка всех поставщиков

Снимок экрана vulkaninfo, показывающий информацию о поддерживаемых экземплярах Vulkan и vkcubeпрограмму для тестирования реализации Vulkan в системе

Первоначальные спецификации гласили, что драйверы Vulkan могут быть реализованы на любом оборудовании, поддерживающем OpenGL ES 3.1 или OpenGL 4.x и выше. [79] Поскольку поддержка Vulkan требует новых графических драйверов, это не обязательно означает, что каждое существующее устройство, поддерживающее OpenGL ES 3.1 или OpenGL 4.x, будет иметь доступные драйверы Vulkan.

Интел

По состоянию на март 2023 года Intel разделила поддержку драйверов Vulkan для Windows [80] и Linux . [81] Все драйверы разработаны Intel.

В Windows Skylake до Ice Lake поддерживает версии до Vulkan 1.3 [82] с ограниченной поддержкой после июля 2022 года, поскольку будущие обновления будут охватывать только исправления безопасности. [80] Iris Xe и более новые версии полностью поддерживаются с марта 2023 года. [83]

В Linux по состоянию на март 2023 года поддержка Vulkan для Haswell неполная [84], поскольку он не совместим с Vulkan 1.0. [85] Помимо Haswell, Ivy Bridge и Broadwell также поддерживаются устаревшим драйвером Vulkan в Mesa под названием HASVK. [81] Skylake и более новые версии поддерживаются драйвером в Mesa под названием ANV. [81]

АМД

В Windows Vulkan 1.2 поддерживается от GCN 1.0 до GCN 3.0, [86] [87] [88], и никаких дальнейших обновлений не запланировано после июня 2021 года. [89] GCN 4.0 и более новые версии поддерживают Vulkan 1.3. [90]

В Linux есть различные драйверы Vulkan с различной и перекрывающейся поддержкой оборудования. Существует драйвер Vulkan с открытым исходным кодом, называемый AMDVLK, разработанный AMD, который отражает поддержку Windows. [91] Существует также проприетарный драйвер, называемый AMDGPU-PRO, который не рекомендуется использовать большинству пользователей по состоянию на март 2023 года. [92]

Также существует рекомендуемый драйвер RADV в Mesa, разработанный Valve, Red Hat, [93] Google [94] и другими. Этот драйвер по состоянию на март 2023 года поддерживает все карты GCN и RDNA . [95] Поддержка этим драйвером RADV GCN 1.0 через GCN 2.0 требует включения его экспериментальной поддержки в модуле ядра amdgpu . [96]

NVIDIA

В Windows и Linux имеется разработанный NVIDIA драйвер Vulkan, который поддерживает Vulkan 1.2 на картах Kepler [97], и никаких дальнейших обновлений после сентября 2021 года не запланировано. [98] Maxwell и более новые версии поддерживают Vulkan 1.3. [99]

NVK, экспериментальный драйвер Vulkan с открытым исходным кодом для Linux на основе nouveau , был анонсирован в октябре 2022 года. [100] Он был объединен с основной веткой Mesa в августе 2023 года. [101] В настоящее время драйвер поддерживает Vulkan 1.3 [102]

Android и мобильные графические процессоры

Большинство современных устройств Android поддерживают Vulkan. Android 7.0 Nougat включает дополнительную поддержку Vulkan 1.0, [103] Android 9.0 Pie включает дополнительную поддержку Vulkan 1.1, а Android 10 ожидает (но не требует), что все 64-разрядные устройства с немалым объемом памяти поддерживают Vulkan 1.1. [104] [105] [106] Android 13 ожидает при тех же условиях поддержки Vulkan 1.3. [107] На устройствах Linux и некоторых ChromeOS драйвер Mesa с открытым исходным кодом обеспечивает поддержку оборудования Arm Mali (Midgard и Bifrost), Qualcomm Adreno и Broadcom VideoCore VI . [108]

Яблоко

По состоянию на июнь 2022 года устройства Apple не поддерживают API Vulkan. [109] Поддержка Vulkan доступна через библиотеку с открытым исходным кодом MoltenVK , которая обеспечивает реализацию Vulkan поверх графического API Metal , предоставляемого на устройствах iOS и macOS, хотя она имеет некоторые ограничения в отношении некоторых расширенных функций API. [27]

В июне 2022 года версия 1.3.217 Vulkan добавила поддержку объектов Metal, что облегчило импорт и экспорт между двумя API. [110] В декабре 2022 года версия 1.3.236 Vulkan добавила небольшие исправления для взаимодействия с Apple Metal. [111]

Huawei и Фонд OpenAtom

По состоянию на август 2023 года Huawei предоставляет поддержку для собственного Vulkan NAPI с отраслевым стандартным шейдером SPIR-V с HarmonyOS 4.0 API 10 и расширенного в систему HarmonyOS NEXT . Он был принят в качестве расширения в проекте OpenAtom с открытым исходным кодом, OpenHarmony с более новым графическим стеком для системы, движком программного обеспечения ArkGraphics 3D , который был недавно открыт с мая 2024 года в OpenHarmony 5.0 beta 1, который ранее был эксклюзивным для фирменного комплекта разработчика HarmonyOS NEXT, на пользовательских графических конвейерах функций. [112]

Обратная совместимость

Vulkan не имеет обратной совместимости с OpenGL , [113] [17] [примечание 1], хотя существуют определенные проекты, реализующие OpenGL поверх Vulkan, такие как ANGLE от Google и Zink от Mesa . [114]

Vulkan также несовместим с другими графическими API, такими как Direct3D , Metal и Mantle , однако реализации этих API существуют поверх Vulkan:

Платформо-специфичные графические API, реализованные поверх Vulkan, также могут работать на альтернативных платформах. Например, DXVK предоставляет альтернативную общую библиотеку, предназначенную для использования в Linux изначально (без слоя совместимости с Wine ) для помощи в портировании игр.

Смотрите также

Примечания

  1. ^ Процесс настройки конвейера графического рендеринга не сильно отличается от OpenGL [ES]. Например, шейдеры, написанные на GLSL, по-прежнему можно использовать повторно: исходный код может быть скомпилирован/транслирован автономным компилятором в новый промежуточный двоичный формат, называемый SPIR-V, который затем может быть использован API Vulkan.

Ссылки

  1. ^ ab "Khronos Releases Vulkan 1.0 Specification". Khronos.org . Пресс-релиз Khronos Group. 16 февраля 2016 г. Архивировано из оригинала 20 октября 2021 г.
  2. ^ "v1.3.296". 26 сентября 2024 г. Получено 26 сентября 2024 г.
  3. ^ "KhronosGroup/Vulkan-Docs". GitHub . 10 октября 2021 г. Архивировано из оригинала 20 октября 2021 г.
  4. ^ "Vulkan на FreeBSD". Информация о Vulkan GPU . 28 октября 2021 г.
  5. ^ "Vulkan на QNX". khronos.org . 14 июля 2021 г. Архивировано из оригинала 20 октября 2021 г.
  6. ^ "Nintendo Switch указана как Vulkan и OpenGL Conformant – My Nintendo News". My Nintendo News . Excite Global Media. 19 декабря 2016 г. Архивировано из оригинала 20 октября 2021 г.
  7. ^ Палумбо, Алессио (19 декабря 2016 г.). «Nintendo Switch официально поддерживает Vulkan, OpenGL 4.5 и OpenGL ES». WCCF Tech . Архивировано из оригинала 20 октября 2021 г.
  8. ^ "Conformant Products". khronos.org . Группа Khronos. 28 апреля 2018 г. Архивировано из оригинала 28 января 2017 г. Получено 28 февраля 2018 г.
  9. Bright, Peter & Walton, Mark (16 февраля 2016 г.). «Vulkan теперь официальный, с выпуском API 1.0 и драйвером AMD [обновлено]». Ars Technica . Архивировано из оригинала 20 октября 2021 г. Получено 18 февраля 2016 г.
  10. ^ Valich, Theo (17 февраля 2016 г.). «Mantle Cycle is Complete as Khronos Releases Vulkan 1.0». VR World . Архивировано из оригинала 20 октября 2021 г. Получено 19 февраля 2016 г.
  11. ^ "Vulkan на Raspberry Pi". raspberrypi.org . 14 июля 2021 г. Архивировано из оригинала 20 октября 2021 г.
  12. ^ "VxWorks предлагает поддержку многих стандартных графических библиотек, таких как ... и Vulkan" (PDF) . Wind River Systems .
  13. ^ abcd "Подробнее о Vulkan и SPIR – V: будущее высокопроизводительной графики" (PDF) . Khronos Group. стр. 10. Архивировано (PDF) из оригинала 11 августа 2016 г. . Получено 27 июня 2015 г. . Спасибо AMD!
  14. ^ "Vulkan-Headers/LICENSE.md на главной · KhronosGroup/Vulkan-Headers" . Получено 3 января 2023 г. – через GitHub .
  15. ^ "Vulkan". NVIDIA Developer . 2 декабря 2015 г. Архивировано из оригинала 20 октября 2021 г. Получено 8 июля 2021 г.
  16. ^ "Vulkan®". GPUOpen . Архивировано из оригинала 20 октября 2021 г. Получено 8 июля 2021 г.
  17. ^ abc "Разработка 3D-графики с помощью Vulkan на мобильных устройствах". Qualcomm Developer Network . Архивировано из оригинала 20 октября 2021 г. Получено 8 июля 2021 г.
  18. ^ Хруска, Джоэл. «API Vulkan следующего поколения может стать решающим преимуществом Valve в борьбе с Microsoft». ExtremeTech. Архивировано из оригинала 13 марта 2015 г. Получено 26 июня 2015 г.
  19. ^ "Vulkan: Graphics and compute Belong Together" (PDF) . Khronos Group. Март 2015 г. Архивировано (PDF) из оригинала 18 декабря 2016 г. Получено 5 марта 2015 г.
  20. ^ abc "Vulkan – Graphics and compute belongs together". Khronos Group. Архивировано из оригинала 20 октября 2021 г. Получено 5 марта 2015 г.
  21. ^ Смит, Райан. «Khronos объявляет о следующем поколении инициативы OpenGL». Архивировано из оригинала 20 октября 2021 г. Получено 24 сентября 2016 г.
  22. Batchelor, James (3 марта 2015 г.). "glNext представлен как графический API Vulkan". Разработка .
  23. ^ "Программное обеспечение Vulkan lavapipe rendering работает на Haiku". Сообщество Haiku . 24 сентября 2021 г. Получено 21 сентября 2022 г.
  24. ^ "MoltenVK, популярный инструмент разработки Vulkan для macOS, становится открытым исходным кодом". Neowin . Архивировано из оригинала 20 октября 2021 г. Получено 28 февраля 2018 г.
  25. ^ «Графика Vulkan позволит ускорить игры и приложения на платформах Apple». VentureBeat . 26 февраля 2018 г. Архивировано из оригинала 20 октября 2021 г. Получено 28 февраля 2018 г.
  26. ^ "Vulkan теперь доступен на macOS/iOS от MoltenVK с открытым исходным кодом, Vulkan SDK для Mac – Phoronix". phoronix.com . Получено 28 февраля 2018 г. .
  27. ^ ab "MoltenVK". Molten. Архивировано из оригинала 5 января 2018 г. Получено 5 апреля 2016 г.
  28. ^ "Vulkan: Высокая эффективность на мобильных устройствах". Imagination Technologies. 5 ноября 2015 г. Архивировано из оригинала 9 ноября 2015 г. Получено 23 января 2016 г.
  29. ^ "Khronos Group анонсирует следующее поколение графического и вычислительного API 'Vulkan'". Tom's Hardware . 3 марта 2015 г. Архивировано из оригинала 20 октября 2021 г.
  30. ^ "Vulkan: Масштабирование в несколько потоков". Imagination Technologies. 24 ноября 2015 г. Архивировано из оригинала 26 ноября 2015 г. Получено 23 января 2016 г.
  31. ^ ab "Adreno Vulkan Developer Guide" (PDF) . 31 августа 2017 г. стр. 9–10, 22. Архивировано (PDF) из оригинала 20 октября 2021 г.
  32. ^ Кессенич, Джон. "Введение в SPIR-V" (PDF) . Группа Khronos . Архивировано из оригинала (PDF) 9 марта 2015 г. . Получено 5 марта 2015 г. .
  33. ^ "Трассировка лучей в Vulkan". Khronos Group . 15 декабря 2020 г. Архивировано из оригинала 20 октября 2021 г.
  34. ^ "FOSDEM 2016 – Vulkan в открытом исходном коде". FOSDEM . Архивировано из оригинала 20 октября 2021 г. Получено 27 февраля 2016 г.
  35. ^ «Переход с OpenGL на Vulkan». Nvidia. 11 февраля 2016 г. Архивировано из оригинала 20 октября 2021 г.
  36. ^ "AMD Vulkan API". AMD. Архивировано из оригинала 20 октября 2021 г.
  37. ^ "Vulkan Next обеспечит лучшую поддержку VR и нескольких графических процессоров". PC World. Архивировано из оригинала 20 октября 2021 г.
  38. ^ Уильямс, Дэниел; Смит, Райан. «Повторный взгляд на пепел сингулярности: бета-версия Direct3D 12 и асинхронный шейдинг». AnandTech. Архивировано из оригинала 20 октября 2021 г.
  39. ^ "Khronos Group выпускает Vulkan 1.1". Khronos Group (пресс-релиз). 7 марта 2018 г. Архивировано из оригинала 20 октября 2021 г. Получено 21 марта 2018 г.
  40. ^ ab Larabel, Michael (7 марта 2018 г.). «Vulkan 1.1 выпущен как первое крупное обновление этого графического/вычислительного API». Phoronix . Получено 7 марта 2018 г. .
  41. ^ Ларабель, Майкл (19 сентября 2018 г.). «Vulkan 1.1.85 выпущен с трассировкой лучей, шейдерами сеток и другими новыми расширениями NVIDIA». Phoronix . Получено 19 сентября 2018 г. .
  42. ^ Ларабель, Майкл (4 ноября 2018 г.). «Vulkan 1.1.91 выпущен с NV_ray_tracing, AMD Memory Overallocation Behavior». Phoronix . Получено 4 ноября 2018 г. .
  43. Bright, Peter (7 марта 2018 г.). «Сегодня вышел Vulkan 1.1 с поддержкой нескольких графических процессоров и лучшей совместимостью с DirectX». Ars Terchnica. Архивировано из оригинала 20 октября 2021 г. Получено 7 марта 2018 г.
  44. ^ "Выпущены спецификации Vulkan 1.2 | Geeks3D". 15 января 2020 г. Архивировано из оригинала 20 октября 2021 г.
  45. ^ "Khronos Group выпускает Vulkan 1.2". Khronos Group (пресс-релиз). 15 января 2020 г. Архивировано из оригинала 20 октября 2021 г. Получено 27 февраля 2020 г.
  46. ^ "Vulkan 1.2 выходит с прицелом на большую производительность и лучшую совместимость с другими 3D API". Phoronix (пресс-релиз). 15 января 2020 г. Получено 27 февраля 2020 г.
  47. ^ ab "Khronos укрепляет экосистему Vulkan с выпуском Vulkan 1.3, публичной дорожной карты и профилей". 25 января 2022 г.
  48. ^ «Vulkan® 1.3.206 – Спецификация (со всеми зарегистрированными расширениями Vulkan)». khronos.org .
  49. ^ «Выпущена спецификация Vulkan 1.3». 25 января 2022 г.
  50. ^ "Breaking: OpenCL Merging Roadmap into Vulkan | PC Perspective". pcper.com . Архивировано из оригинала 1 ноября 2017 г. . Получено 17 мая 2017 г. .
  51. ^ «SIGGRAPH 2018: OpenCL-Next обретает форму, Vulkan продолжает развиваться – Phoronix». phoronix.com .
  52. ^ Clspv — прототип компилятора для подмножества вычислительных шейдеров OpenCL C в Vulkan: google/clspv, 17 августа 2019 г., заархивировано из оригинала 20 октября 2021 г. , извлечено 20 августа 2019 г.
  53. ^ "Vulkan Update SIGGRAPH 2019" (PDF) . Архивировано из оригинала (PDF) 20 августа 2019 г.
  54. ^ SIGGRAPH 2015: 3D Graphics API State of the Union (видео) . SIGGRAPH 2015 . Khronos Group . 16 сентября 2015 г. Событие произошло в 57:24 . Получено 12 ноября 2015 г. – через YouTube .
  55. ^ "US Patent and Trademark Office". Архивировано из оригинала 11 мая 2013 г. Получено 7 марта 2015 г.
  56. Batchelor, James (3 марта 2015 г.). "glNext представлен как графический API Vulkan | Последние новости из индустрии разработки игр | Разработка". MCV . Разработка . Получено 5 марта 2015 г. .
  57. ^ Ларабель, Майкл (5 марта 2015 г.). «Valve разработала драйвер Intel Linux Vulkan GPU». Phoronix . Получено 8 августа 2017 г. .
  58. ^ Ларабель, Майкл (12 марта 2015 г.). «Узнаем больше о драйвере Intel Vulkan, планы Linux Vulkan». Phoronix . Получено 8 августа 2017 г. .
  59. ^ "Эван Одабашян в Twitter". Архивировано из оригинала 19 августа 2020 г. Получено 22 июля 2015 г.
  60. ^ Вудс, Шеннон (12 августа 2015 г.). «Low-overhead rendering with Vulkan». Блог разработчиков Android . Архивировано из оригинала 20 октября 2021 г.
  61. Bright, Peter (26 февраля 2018 г.). «Vulkan появится на macOS и iOS, но не благодаря Apple». Ars Technica. Архивировано из оригинала 20 октября 2021 г. Получено 26 февраля 2018 г.
  62. ^ "3D Graphics with Vulkan and OpenGL" (PDF) . Группа Khronos. 15 августа 2018 г. Получено 30 ноября 2023 г.
  63. ^ Ларабель, Майкл (26 февраля 2018 г.). «Vulkan теперь доступен на macOS/iOS от MoltenVK, исходный код Vulkan SDK для Mac открыт». Phoronix . Получено 26 февраля 2018 г.
  64. ^ "Khronos Group начинает работу над новой инициативой стандартов для внедрения ускорения графических процессоров Vulkan в критически важные для безопасности отрасли". Khronos Group . 25 февраля 2019 г. Архивировано из оригинала 20 октября 2021 г. Получено 3 августа 2019 г.
  65. ^ Ларабель, Майкл (19 марта 2019 г.). «Stadia — это облачный игровой сервис Google, использующий Linux, Vulkan и собственный графический процессор AMD» . Получено 30 ноября 2023 г.
  66. ^ "HLSL как первоклассный язык шейдеров Vulkan". Группа Khronos . 15 января 2020 г. Архивировано из оригинала 20 октября 2021 г. Получено 31 марта 2020 г.
  67. ^ Mott, Nathaniel (3 февраля 2020 г.). "Raspberry Pi получит графический драйвер Vulkan (в конечном итоге)". Tom's Hardware . Архивировано из оригинала 19 августа 2020 г. Получено 20 июня 2020 г.
  68. ^ Zhiye Liu (20 июня 2020 г.). "Драйвер Vulkan от Nvidia Engineer для Raspberry Pi запускает Quake III со скоростью более 100 кадров в секунду при разрешении 720p". Tom's Hardware . Архивировано из оригинала 19 августа 2020 г. Получено 20 июня 2020 г.
  69. ^ "Khronos Group выпускает Vulkan Ray Tracing". Khronos Group . 17 марта 2020 г. Архивировано из оригинала 20 октября 2021 г.
  70. ^ "Vulkan Ray-Tracing появляется с новым расширением Khronos – Phoronix". phoronix.com . Получено 17 марта 2020 г. .
  71. ^ "Vulkan Ray Tracing Final Specification Release". Группа Khronos . 23 ноября 2020 г. Архивировано из оригинала 20 октября 2021 г.
  72. ^ «Обновление Vulkan: мы совместимы!». Raspberry Pi Foundation . 24 ноября 2020 г.
  73. ^ "Vulkan SC – графика Vulkan для критически важной для безопасности отрасли". Группа Khronos . 22 февраля 2019 г. Получено 30 марта 2022 г.
  74. ^ "Обновление Vulkan: соответствие версии 1.2 для Raspberry Pi 4". Raspberry Pi Foundation . 1 августа 2022 г.
  75. ^ «Mesh Shading для Vulkan». Сентябрь 2022 г.
  76. ^ "VK_EXT_mesh_shader".
  77. ^ «Khronos стимулирует поддержку отрасли для расширенных 3D-функций с помощью Vulkan Roadmap 2024». 25 января 2024 г.
  78. ^ «Khronos выпускает AV1 Decode в Vulkan Video с поддержкой SDK для H.264/H.265 Encode». Февраль 2024 г.
  79. ^ "Обзор Vulkan" (PDF) . Khronos Group. Июнь 2015 г. Архивировано (PDF) из оригинала 8 декабря 2015 г. Получено 18 августа 2015 г.стр. 19 "Статус Вулкана"
  80. ^ ab "Обновление поддержки графических драйверов для графических процессоров Intel 10-го поколения и более старых". community.intel.com . 27 июля 2022 г. . Получено 14 февраля 2023 г. .
  81. ^ abc "Произошло разделение драйвера Intel Vulkan — представлен "HASVK" для старых графических процессоров Gen7/Gen8". www.phoronix.com . Получено 14 февраля 2023 г. .
  82. ^ "Intel® 6-10-е поколение процессорной графики - Windows". Intel . Получено 14 февраля 2023 г. .
  83. ^ "Intel® Arc™ & Iris® Xe Graphics - WHQL - Windows*". Intel . Получено 14 февраля 2023 г. .
  84. ^ "Поддержка Haswell Vulkan неполная (#6008) · Проблемы · Mesa / mesa · GitLab". GitLab . 9 февраля 2022 г. . Получено 14 февраля 2023 г. .
  85. ^ "intel: разделить драйвер vulkan между gfx7/8 и выше (!18208) · Запросы на слияние · Mesa / mesa · GitLab". GitLab . 23 августа 2022 г. . Получено 14 февраля 2023 г. .
  86. ^ "AMD Radeon R7 265 Specs". TechPowerUp . Получено 14 февраля 2023 г. .
  87. ^ "AMD Radeon HD 7790 Specs". TechPowerUp . Получено 14 февраля 2023 г. .
  88. ^ "AMD Radeon R9 285 Specs". TechPowerUp . Получено 14 февраля 2023 г. .
  89. ^ "Обновление поддержки продуктов и ОС для Radeon Software Adrenalin 21.6.1". AMD.com . 21 июня 2021 г. Получено 14 февраля 2023 г.
  90. ^ "Radeon™ Software Adrenalin 22.1.2 с поддержкой Vulkan 1.3. Заметки о выпуске" . Получено 14 февраля 2023 г.
  91. ^ AMD Open Source Driver for Vulkan®, GPUOpen Drivers, 11 февраля 2023 г. , получено 14 февраля 2023 г.
  92. ^ "Radeon Software For Linux 22.10 Driver Being Prepared For Release". Форумы Phoronix . 31 марта 2022 г. Получено 14 февраля 2023 г.
  93. ^ "AMD RDNA2 Vulkan: RADV против RADV+NGGC против AMDVLK против PRO Driver Benchmarks". www.phoronix.com . Получено 14 февраля 2023 г. .
  94. ^ "Производительность трассировки лучей Mesa RADV Radeon Vulkan продолжает улучшаться". www.phoronix.com . Получено 14 февраля 2023 г. .
  95. ^ "RADV — Последняя документация по библиотеке графики Mesa 3D". docs.mesa3d.org . Получено 14 февраля 2023 г. .
  96. ^ "AMDGPU - ArchWiki" . wiki.archlinux.org . Проверено 14 февраля 2023 г.
  97. ^ "NVIDIA GeForce GTX 770 Specs". TechPowerUp . Получено 14 февраля 2023 г. .
  98. ^ "План поддержки графических процессоров GeForce серии Kepler для настольных ПК | NVIDIA". nvidia.custhelp.com . Получено 14 февраля 2023 г. .
  99. ^ "Поддержка драйверов Vulkan". Разработчик NVIDIA . 10 февраля 2016 г. Получено 14 февраля 2023 г.
  100. ^ "Представляем NVK". Collabora . Получено 14 февраля 2023 г.
  101. ^ "NVK приземлился!". Collabora . Получено 8 декабря 2023 г.
  102. ^ Ларабель, Майкл (27 января 2024 г.). «Драйвер NVIDIA Vulkan «NVK» от Mesa теперь демонстрирует поддержку Vulkan 1.3». www.phoronix.com . Получено 27 января 2024 г.
  103. ^ «Вторая предварительная сборка Android N поддерживает Vulkan и новые эмодзи». Ars Technica. 13 апреля 2016 г. Архивировано из оригинала 20 октября 2021 г.
  104. ^ «Поддержка Vulkan Graphics API 1.1 появится в Android P». 8 апреля 2018 г. Архивировано из оригинала 20 октября 2021 г.
  105. ^ "Что нового в Android: Q Beta 3 и многое другое". Архивировано из оригинала 20 октября 2021 г.
  106. ^ Альберт, Дэн. «Внедрение Vulkan». Источник.Android.com . Google . Получено 2 января 2024 г. .
  107. ^ Альберт, Дэн. «Внедрение Vulkan». Источник.Android.com . Google . Получено 2 января 2024 г. .
  108. ^ "Mesamatrix: OpenGL против Mesa matrix". mesamatrix.net . Архивировано из оригинала 20 октября 2021 г.
  109. ^ «Состояние Vulkan на устройствах Apple» (PDF) . LunarG. Июнь 2021 г. Архивировано (PDF) из оригинала 9 июля 2021 г.
  110. ^ Ларабель, Майкл (9 июня 2022 г.). «Vulkan 1.3.217 добавляет расширение для взаимодействия с металлическими объектами Apple». phoronix.com . Получено 22 октября 2022 г. .
  111. ^ "Выпуск выпуска для Vulkan SDK 1.3.236 · KhronosGroup/MoltenVK". GitHub . Получено 29 декабря 2022 г. .
  112. ^ Бенджамин (10 апреля 2024 г.). «Высококачественная графика с ArkGraphics 3D на HarmonyOS NEXT — HarmonyOSHub». harmonyoshub.com . Получено 24 мая 2024 г. .
  113. Тим Андерсон (3 марта 2015 г.). «Вот и Vulkan: следующее поколение графического API OpenGL». theregister.com . Архивировано из оригинала 20 октября 2021 г. . Получено 8 июля 2021 г. .
  114. ^ "Zink – Mesa 3D Graphics Library последняя документация". docs.mesa3d.org . Получено 10 марта 2022 г. .

Дальнейшее чтение

Внешние ссылки