Verknüpfter Grafikkarte
Jeder physische Adapter in einem Link für verknüpfte Grafikkarten (Linked Display Adapter, LDA) kann GpuMmu oder IoMmu oder beide Adressierungsmodi unabhängig unterstützen.
IoMmu-Unterstützung
Jeder physische Adapter in einem Link kann das IoMmu-Modell und/oder das GpuMmu-Modell unterstützen.
DxgkDdiCreateDevice wird für logische Adapter aufgerufen, die das IoMmu-Modell unterstützen.
GpuMmu-Unterstützung
Alle physischen Adapter in einem Link verwenden denselben virtuellen Prozessadressraum, aber jede Grafikverarbeitungseinheit (GPU) verfügt über eigene Seitentabellen. Im Allgemeinen ist der Inhalt von Seitentabellen auf jeder GPU unterschiedlich.
Jeder physische Adapter darf über eigene GpuMmu-Funktionen (Seitentabellensegment, Seitentabellenaktualisierungsknoten, virtuelles Adresslayout, das zugrunde liegende Seitentabellenformat, die Größe usw.) verfügen. Die einzige Einschränkung besteht darin, dass alle physischen Adapter die gleiche virtuelle Adressgröße aufweisen müssen. GpuMmuCaps.VirtualAddressBitCount muss für alle Adapter identisch sein. Der Treiber sollte die Größe des Adressraums auf die kleinste der physischen GPUs klammern.
Der DirectX-Grafikkern fragt jetzt gpuMmu-Feststelltaste für jeden physischen Adapter in einem Link ab. DxgkDdiQueryAdapterInfo (DXGKQAITYPE_PAGETABLELEVELDESC) wird auch für jeden physischen Adapter aufgerufen.
InputDataSize und pInputData für DxgkDdiQueryAdapterInfo(DXGKQAITYPE_GPUMMUCAPS) verweisen auf DXGK_GPUMMUCAPSIN.
InputDataSize und pInputData für DxgkDdiQueryAdapterInfo(DXGKQAITYPE_PAGETABLELEVELDESC) verweisen auf DXGK_PAGETABLELEVELDESCIN.