Новости про API

Google внедряет в Android технологию наблюдения за сном

Компания Google в Android Developers Blog объявила о том, что делает доступным Sleep API для третьих разработчиков. Компания отметила, что Sleep API разработан для слежения за сном наиболее энергоэффективным образом, а открытый API могут использовать другие разработчики.

Для этого компания объединила усилия с Urbandroid, авторами приложения Sleep As Android. Комментируя Sleep API компания Urbandroid отметила: «Sleep as Android — это швейцарский армейский нож, позволяющий улучшить ночной отдых. Он отслеживает длительность сна, регулярность, фазы, храп и так далее. Длительность сна — один из важнейших параметров для мониторинга, который гарантирует хороший ночной отдых. Новый Sleep API даёт фантастическую возможность для отслеживания его автоматически наиболее энергоэффективным образом, из тех, что можно представить».

Android Sleep API

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

Sleep API уже доступен для пользователей, как часть последней версии Google Play Services.

Raspberry Pi 4 совместим с API Vulkan

Поддержка API Vulkan была продемонстирована на свежих устройствах Raspberry Pi, что делает Raspberry Pi 4, Raspberry Pi 400 и Compute Module 4 на шаг ближе к полноценной поддержке Vulkan.

Поколение продуктов Raspberry 4 прошло тест подтверждения Vulkan 1.0. Этот тест включает более 100 000 этапов и гарантирует, что аппаратная часть Raspberry Pi и его драйверы соответствуют стандартам Khronos Group. В настоящее время драйвер V3DV Vulkan Mesa для Raspberry Pi 4 получил полное соответствие, однако для добавления функционала Vulkan, исправления ошибок и повышения производительности требуется дополнительное время.

Тестирование Vulkan на Raspberry Pi

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

Когда будет финализирована поддержка Vulkan в Raspberry Pi 4 пока не ясно, однако сейчас это событие явно ближе, чем когда-либо.

Khronos хочет стандартизировать трассировку лучей

В настоящее время в мире существует лишь одна игра, обеспечивающая трассировку лучей посредством Vulkan. Это Wolfenstein Youngblood. Ещё есть Quake II RTX, которая не продаётся в рознице. Проблема заключается в том, что API Vulkan не имеет официальной поддержки трассировки. Компания NVIDIA подготовила специальное расширение своего эксклюзивного аппаратного решения, но оно не мультиплатформенное, которое обеспечивается Microsoft DXR (DirectX Raytracing).

Для решения проблемы Khronos Group планирует провести обсуждение «Трассировка лучей в Vulkan» в ходе GDC 2020 с инженерами всех трёх игроков на рынке графики: AMD, Intel и NVIDIA. Как будет реализована поддержка трассировки лучей, Khronos пока не сообщает. Однако учитывая, что недавно Khronos принял Vulkan 1.2, можно допустить, что будет реализовано видение DXR от Microsoft. Дело в том, что Vulkan 1.2 уже поддерживает HLSL (язык шейдеров DirectX) с поддержкой Shader Model 6.2. Версия Shader Model 6.3 выйдет с кодом DXR HLSL, и именно этот код может быть применён для реализации трассировки лучей в Vulkan.

Vulkan 1.2

Почему Khronos идёт таким путём? Ответ прост. Чтобы обеспечить мультиплатформенность игр, которые смогут появиться в консоли Microsoft Xbox Series X, где применяется рендер DirectX 12. Такая совместимость заметно упростит разработку игр и сделает их если и не полностью совместимыми, то хотя бы легко адаптируемыми.

NVIDIA адаптирует RTX Ray для API Vulkan

Компания NVIDIA делает активные шаги по популяризации трассировки лучей в реальном времени.

Сейчас, презентовав технологию RTX, компания пытается заменить на неё растеризующий рендер, используемый для 3D приложений три десятка лет. В Microsoft выпустили своё дополнение к DirectX 12,названное DXR. А теперь, по данным Khronos Group, NVIDIA готовит RTX для Vulkan.

Логотип API Vulkan

Новое расширение Vulkan получило название «VK_NV_raytracing». Оно является вкладом компании в общую работу над стандартом. Это расширение вносит несколько функций NVIDIA RTX и пресетов в Vulkan. Структура кода сходна с DXR, чтобы минимизировать эффект раздвоения и снизить сложность.

Обработка графики с трассировкой лучей
Создание ускоряющих структур

Khronos объединит OpenCL и Vulkan

В пресс-релизе анонса финальных спецификаций OpenCL 2.2 и SPIR-V 1.2, Khronos Group намекнула о возможной интеграции API OpenCL и Vulkan в будущем.

В оригинальном пресс-релизе лишь говорится о работе «консорциума над стремлением и развитием Khronos Vulkan API в объединении современной графики и вычислений в единый API».

Скотт Михауд из PC Perspective пояснил, что рабочая группа OpenCL приняла решение по согласованию своей дорожной карты с Vulkan, что станет основой для дальнейшего объединения этих API.

Несмотря на то, что и OpenCL и Vulkan работают на одном поле, первый API поддерживает более широкий спектр устройств, поддерживает бесплатный SYCL и кросс-платформенный абстрактный слой, который позволяет писать гетерогенный код по стандартам C++. В то же время Vulkan является маркетинговой звездой и обладает прекрасной поддержкой со стороны разработчиков.

Объединение OpenCL и Vulkan под эгидой Khronos станет прекрасным решением, которое позволит облегчить разработку приложений, распространить API на большее количество устройств и создать серьёзную конкуренцию DirectX 12.

Раскрыты планы работ по Vulcan Next

В ходе презентации Khronos Group на SIGGRAPH 2016, представители организации рассказали о состоянии разработки Vulkan, OpenGL и OpenGL ES. Несмотря на отсутствие заметных изменений, было рассказано о подготовке Vulkan Next — новой версии API Vulkan.

Разработчики составили дорожную карту развития API, в которой указаны намерения по улучшению поддержки систем с несколькими видеокартами. Также новый API станет лучше подготовленным к шлемам виртуальной реальности, таким как Oculus Rift and HTC Vive, с более эффективным рендером и прямым доступом к экрану.

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

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

Intel поддерживает Vulkan 1.0 AP

Компания Intel представила новую бета версию графического драйвера с поддержкой API Vulkan 1.0 в процессорах, относящихся к 6-му поколению процессоров Intel Core. Технология доступна в операционных системах Windows 7, 8 и 10.

Технология Vulkan 1.0 была представлена в прошлом месяце промышленным консорциумом Khronos Group. Технология должна заменить OpenGL, который был подготовлен в далёком 1991 году компанией Silicon Graphics. Новая технология может задействовать ресурсы как GPU, так и многоядерных CPU, однако пока она далека от  конкурента — DirectX 12, поддержка которого реализована в финальных драйверах всех производителей графических процессоров.

Технология Vulkan 1.0 также сможет работать и на Linux, в составе таких операционных систем, как SteamOS. Компания Intel открыла исходный код драйвера для Linux. Он будет доступен для процессоров с кодовыми именами Broadwell и Skylake.

Vulkan будет работать только с новыми GPU AMD?

Удивительно, но компания AMD, по всей видимости, по-своему понимает значение выражения «открытый исходный код». Такая догадка исходит из того, что готовящийся API Vulkan будет работать лишь с драйвером ядра AMDGPU DRM.

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

Сможет ли Vulkan работать с DRM драйвером Radeon остаётся неизвестно, поскольку сама компания объявила, что новый API в Linux будет работать только с проприетарным драйвером AMDGPU, который поддерживает лишь видеокарты Radeon R9 285 Tonga, R9 Fury Fiji, Carrizo, и будущие решения. Возможно, что компания реализует экспериментальную поддержку карт из списка стандартного драйвера, который не включает ускорители серии HD7000.

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

О том, какие же GPU будут поддерживать Vulkan в Windows пока ничего не известно, однако технически возможно обеспечить работу API на GPU с поддержкой OpenGL ES 3.1 или OpenGL 4.X.

Vulkan API отложен до 2016 года

Khronos Group объявила о том, что API Vulkan не будет выпущен в этом году. Наследник OpenGL уже близок к завершению, однако, конечная дата релиза пока не названа.

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

Работы по выпуску SDK ведутся для операционных систем Windows, Android и Linux. В Khronos сообщили, что в течение следующего года в ходе крупнейших технологических мероприятий будут представлены демонстрации возможностей экосистемы Vulkan.

AMD лучше адаптирована для DX12

Недавно был представлен первый игровой бенчмарк DirectX 12 под названием Ashes of the Singularity, и выяснилось, что от нового API в большем выигрыше оказалась AMD, чем NVIDIA.

Сайт PC Perspective  сравнил производительность новой видеокарты AMD Radeon R9 390X с конкурирующим решением NVIDIA GeForce GTX 980, используя новый тест Ashes of the Singularity. В результате выяснилось, что при использовании DX12 производительность карты AMD выросла значительно больше, чем у карты NVIDIA.

При использовании рендера в режиме DirectX11, карта Radeon R9 390X демонстрировала меньшую частоту кадров, по отношению к GeForce GTX 980. В то же время при использовании DX12, карта AMD смогла сравняться с «зелёным» конкурентом, продемонстрировав рывок в скорости обработки. При этом ускоритель NVIDIA таким прорывом похвастать не сумел.

Также была выявлена зависимость от числа ядер CPU. При большом количестве ядер процессора карты AMD получают большее преимущество перед NVIDIA, при меньшем числе ядер преимущество становится не столь выраженным.

Совершенно ясно, что NVIDIA оказалась в проигрыше. Компания уже заявила, что тест Ashes of the Singularity в нынешнем виде «не является хорошим индикатором общей игровой производительности в DirectX 12». И в этом есть смысл. Нельзя оценивать скорость работы видеокарты по единственному приложению. Также нельзя говорить, что разные игровые движки получат одинаковый прирост производительности при переходе от DX11 к DX12.

Исторически сложилось так, что в некоторых играх преимущество имеют карты Radeon, а в других — GeForce. В этот же раз карты показали равную производительность, при том, что продукт AMD стоит дешевле.