Wednesday March 08, 2017

Vulkan API Gains Multi-GPU and Virtual Reality Support

The Khronos Group has added Vulkan Multi-GPU and Virtual Reality Support to the Vulkan API. This is a big step forward as developers and consumers have been waiting for this support for a long time. Unlike the DX12 API which is tied to Windows 10, the Vulkan API is cross-platform.

News Image

One of the most anticipated features added by Vulkan patch 1.0.42 is Explicit Multi-GPU. It is characterized as a "Building Block approach provides explicit level of control." The article explains that the Explicit Multi-GPU extension set will "Treat multiple GPUs as a single logical device and the application can implement Alternate Frame Rendering, Split Frame Rendering or VR SLI." I'm hoping that this means that owning two 8GB video cards will show as a single card with 16GB of accessible VRAM. Also they are trying to make Multi-GPU easy which is a huge plus for developers.

Vulkan Multi-GPU and Virtual Reality Support

  • WDDM must be in "linked display adapter" mode

  • The most common use case آ– does NOT support dGPU/iGPU

Explicit control of how GPUs cooperate to enable a variety of operating modes

  • AFR (alternate frame), SFR (Sequential frame) and VR SLI Stereo view rendering

A "device group" is a set of physical devices that support multi-GPU rendering

  • Acts as single logical device - makes adding device group support as easy as possible

  • Only access each physical GPU in a device group when need explicit control:

  • Memory allocation and binding resources

  • Command Buffer Recording/Submission

  • Synchronization