The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Компания AMD открыла код драйвера с реализацией API Vulkan"
Отправлено opennews, 27-Дек-17 19:51 
Компания AMD открыла (https://lists.freedesktop.org/archives/amd-gfx/2017-December...) исходные тексты драйвера AMDVLK (https://github.com/GPUOpen-Drivers/AMDVLK) с полной реализацией графического API Vulkan 1.0 (https://www.opennet.ru/opennews/art.shtml?num=43887). Драйвер поставлялся в составе проприетарного набора драйверов AMDGPU-PRO и конкурировал с изначально открытым Vulkan-драйвером RADV, развиваемым проектом Mesa. Код драйвера AMDVLK открыт (https://github.com/GPUOpen-Drivers/) под лицензией MIT.


Новый открытый драйвер реализован с использованием прослойки PAL (https://github.com/GPUOpen-Drivers/pal) (Platform Abstraction Library), предоставляющей унифицированный набор средств для доступа к оборудованию и низкоуровневым  функциям операционной системы для упрощения построения различных драйверов для графических и вычислительных чипов AMD. PAL предоставляет уровень абстракции для поддержки различных платформ, включая недавно выпущенные  GPU и инструменты разработки. Для взаимодействия с оборудованием PAL обращается к встроенному в ядро Linux DRM-модулю amdgpu, который также используется драйверами Mesa.


Ключевым компонентов драйвера является компонент XGL (https://github.com/GPUOpen-Drivers/xgl) (Vulkan API Layer), который занимается трансляцией команд API Vulkan универсальные команды прослойки PAL, которые затем могут быть переданы для обработки в GPU. Для компиляции шейдеров применяется основанный на наработках проекта LLVM компилятор LLPC (LLVM Pipeline Compiler), который генерирует на выходе объекты VkPipeline, совместимые с ABI PAL.  LLPC объединяет в себе три компонента: транслятор  промежуточного представления шейдеров SPIR-V в LLVM IR с дополнительными метаданными. компонент Lower для трансляции полученного промежуточного кода LLVM IR в вызовы функций и компонент Patcher для замены всех внешних вызовов функций на вызовы, соответствующие PAL Pipeline ABI.

Основные возможности драйвера:


-  Поддержка Vulkan 1.0 и более 30 расширений;
-  Возможность использованием системы трассировки Radeon GPUProfiler (https://github.com/GPUOpen-Tools/Radeon-GPUProfiler);
-  Встроенные инструменты для отладки и профилирования;
-  Упреждающий разбор буфера промежуточных команд и виртуализация SR-IOV;
-  Поддержка серий GPU:


-   Radeon HD 7000
-     Radeon HD 8000M
-     Radeon R5/R7/R9 200/300
-     Radeon RX 400/500
-     Radeon M200/M300/M400
-     Radeon RX Vega
-     AMD FirePro Workstation Wx000/Wx100/Wx300
-     Radeon Pro WX x100
-     Radeon Pro 400/500


Запланированные на будущее возможности:


-  Поддержка находящихся в разработке спецификаций Vulkan API;
-  Использование аппаратных счётчиков производительности для сбора информации  через RenderDoc (https://renderdoc.org/);
-  Оптимизация LLPC для сокращения времени компиляции и увеличения производительности, упирающейся в возможности GPU;
-  Оптимизация производительности операций, выполняемых на CPU;


URL: https://lists.freedesktop.org/archives/amd-gfx/2017-December...
Новость: http://www.opennet.ru/opennews/art.shtml?num=47816

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру