Phoronix tagged news

Intel’s “ANV” Vulkan Linux driver has now hooked into the DriConf infrastructure for handling driver tunables and workarounds. As of Friday afternoon, the Intel Vulkan driver hooks into DriConf. That was followed up by adding a toggle for vk_x11_override_min_image_count behavior. That was followed by adding a generic override for when running gfxbench. Learn more about DriConf and this change.

FFmpeg Adds AMD AMF Vulkan Support For Linux Users

The FFmpeg library up to this point has supported AMD’s Advanced Media Framework (AMF) library just on Windows for H.264/HEVC encoding on GPUs. The Windows code-path makes use of DirectX while now AMD AMF support for Linux via Vulkan is now exposed by the latest FFmpeg code.

Vulkan 1.1.119 was released right after 1.1.118. In total, three new extensions have been added: VK_AMD_shader_core_properties2, VK_AMD_pipeline_compiler_control and VK_KHR_pipeline_executable_properties. The first two are AMD vendor extensions, while the most recent extension was worked on jointly by engineers from Intel, Valve, Google, NVIDIA, AMD, Arm, and Samsung. See the Change log on GitHub for additional the details.

The latest update of the AMDVLK Open Source Vulkan driver sees several notable additions. The driver now officially supports VK_EXT_host_query_reset, VK_EXT_separate_stencil_usage, and VK_KHR_uniform_buffer_standard_layout extensions and updates the Vulkan API headers against version 1.1.108. Read more about this update at Phoronix or download the driver on GitHub.

The new MoltenVK now allows run-time configuration of MoltenVK via environment variables, support for GPU switching was added and is enabled by default, queue family specialization was added but currently disabled by default, synchronous queue submits was added and enabled by default, there is now support for four queue families, support for the VK_AMD_gpu_shader_half_float and VK_KHR_variable_pointers extensions, and updated against the latest SPIR-V Cross. There is also some fixes and other internal improvements. Checkout the Change Log on GitHub and read more about this update on Phoronix.

Intel compiler engineer Alexey Bader sent out a public “request for comments” on the idea of adding SYCL to the LLVM Clang compiler stack. He wrote, “We (Intel) would like to request to add SYCL programming model support to LLVM/Clang project to facilitate collaboration on C++ single-source heterogeneous programming for accelerators like GPU, FPGA, DSP, etc. from different hardware and software vendors.” Learn more about this initiative or read the original letter.

Shader Conductor is one of several open-source projects for going from one shading language to another. With Microsoft’s Shader Conductor the focus is on converting HLSL to GLSL or SPIR-V (OpenGL/Vulkan), ESSL (OpenGL ES), MSL (Apple Metal), and older HLSL shader models. Shader Conductor can handle all shader stages, including geometry and compute shaders. Learn more about this new Open Source project from Microsoft.

A libre-licensed software implementation of Vulkan has started up again. Originally started in c++ in 2017, for a reimplementation Rust has been chosen for its concurrency and memory-safety features, and Rust’s LLVM support makes it highly portable. With OpenGL having both llvmpipe and MesaGL for fallback and testing purposes, it seems strange that there does not exist a corresponding Reference Implementation for Vulkan: the only implementations available are in hardware, making it extremely challenging for anyone considering entering the market. Kazan helps fill that gap. Sponsorship of this entirely libre-licensed project welcomed.