Linked display adapter

Each physical adapter in a linked display adapter (LDA) link can support GpuMmu or IoMmu or both addressing modes independently.

IoMmu support

Each physical adapter in a link can support the IoMmu model and/or the GpuMmu model.

DxgkDdiCreateDevice will be called for logical adapters, which support the IoMmu model.

GpuMmu support

All physical adapters in a link share the same process virtual address space, but each graphics processing unit (GPU) has its own page tables. Generally, the content of page tables is different on each GPU.

Diagram showing linked display adapter memory address segments.

Each physical adapter is allowed to have its own GpuMmu capabilities (page table segment, page table update node, virtual address layout, the underlying page table format, size, etc.). The only restriction is that all physical adapters must have the same virtual address size. GpuMmuCaps.VirtualAddressBitCount must be the same for all adapters. The driver should clamp the address space size to the smallest of the physical GPUs.

The DirectX graphics kernel will now query GpuMmu caps for every physical adapter in a link. DxgkDdiQueryAdapterInfo (DXGKQAITYPE_PAGETABLELEVELDESC) will also be called for each physical adapter.

InputDataSize and pInputData for DxgkDdiQueryAdapterInfo(DXGKQAITYPE_GPUMMUCAPS) will point to DXGK_GPUMMUCAPSIN.

InputDataSize and pInputData for DxgkDdiQueryAdapterInfo(DXGKQAITYPE_PAGETABLELEVELDESC) will point to DXGK_PAGETABLELEVELDESCIN.

DxgkDdiCreateDevice