Уже вышла новая версия Vulkan 1.2 и это ее изменения

Вулкан

Недавно Khronos объявил о выпуске новой версии спецификации Vulkan 1.2, который определяется как API для доступа к графике и вычислительным возможностям графического процессора. Исправления и дополнения, накопленные за два года, были включены в новую спецификацию.

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

 

Основные новые функции Vulkan 1.2

Примечательно, чтоРеализация языка программирования шейдеров HLSL. разработан Microsoft для DirectX готов к общему использованию (Поддержка HLSL в Vulkan позволяет использовать только шейдеры HLSL в приложениях на основе Vulkan и DirectX, а также упрощает перевод из HLSL в SPIR-V.)

Для компиляции шейдеров предлагается использовать стандартный компилятор DXC, который был открыт Microsoft в 2017 году и основан на технологии LLVM. Поддержка Vulkan реализована через отдельный бэкэнд, который позволяет транслировать HLSL в промежуточное представление шейдеров SPIR-V.

Реализация охватывает не только все встроенные функции HLSL, включая математические типы, потоки управления, функции, наборы, типы ресурсов, пространства имен, Shader Model 6.2, структуры и методы, но также позволяет использовать определенные расширения от Vulkan, например VKRay от NVRIA.

В режиме HLSL поверх Вулкана, удалось организовать работу таких игр, как Destiny 2, Red Dead Redemption II, Assassin's Creed Odyssey и Tomb Raider.

Также Отмечается, что спецификация SPIR-V 1.5 была обновлена, который определяет универсальное промежуточное представление шейдеров для всех платформ, которое может использоваться как для графики, так и для параллельных вычислений.

API ядра Vulkan включает 23 расширения для повышения производительности, улучшите качество отображения и упростите разработку.

Из них мы можем найти Хронология семафоров: которые унифицируют синхронизацию с очередями хоста и устройства (позволяют использовать примитив для всенаправленной синхронизации между устройством и хостом, без использования отдельных примитивов VkFence и VkSemaphore).

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

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

Из других изменений которые выделяются:

  • Продолжалась работа над проектом переносимости с другими графическими API.
  • Возможность использования числовых типов в шейдерах с пониженной точностью
  • Опция HLSL-совместимой компоновки памяти
  • Несвязанные (несвязанные) ресурсы, которые снимают ограничение на количество ресурсов, доступных шейдерам, за счет использования общего виртуального пространства системной памяти и памяти графического процессора.
  • Формальная модель памяти, которая определяет, как параллельные потоки могут получать доступ к общим данным и операциям синхронизации.
  • Индексирование дескрипторов для повторного использования дескрипторов дизайна в нескольких шейдерах;
  • Привязки буфера.
  • Добавлен полный список расширений
  • Добавлено более 50 новых структур и 13 функций.

Наконец, из планов на будущее выделяется разработка расширений для машинного обучения, трассировки лучей, кодирования и декодирования видео, поддержка VRS (шейдеры с переменной скоростью) и сеточные шейдеры.

Intel, AMD, ARM, Imagination Technologies и NVIDIA уже выпустили драйверы. которые поддерживают новую версию Vulkan.

В то время как случай Настольные игры (бесплатные драйверы), se предлагает поддержку Vulkan 1.2 для драйверов RADV (Карты AMD) и драйверы ANV (Intel). Поддержка Vulkan 1.2 также реализована в отладчике RenderDoc 1.6, LunarG Vulkan SDK и в наборе Vulkan-Samples.


Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Будьте первым, чтобы комментировать

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован.

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.