Freigeben über


Unterstützung von dGPUs auf modernen Standby-Systemen

Überblick

Diskrete GPUs stellen ein herausforderndes Problem für moderne Standby-Designs dar, da sie die Plattform sowohl in Bezug auf den Stromverbrauch als auch die Wiederaufnahme aus der Ruhezustandslatenz belasten. Es ist ein grundlegender Kompromiss zwischen Leistung und Leistung – wenn die dGPU ihren Speicher im VRAM behält (entweder indem sie in D0 aktiv bleibt oder indem sie die VRAM-Selbstaktualisierungsfunktionen in D3 aktiviert), verbraucht sie zusätzlichen Strom – ein Problem angesichts der bevorstehenden Stromversorgung Vorschriften. Wenn die dGPU jedoch in einen D3-Zustand wechselt und ihren Inhalt vollständig entlädt, um den VRAM herunterzufahren, könnte das System unter verlängerten Latenzen leiden, wenn er aus dem Energiesparmodus reaktiviert wird, da es mehrere Sekunden dauern kann, um den VRAM-Inhalt aus dem Hauptspeicher wiederherzustellen. Dieser Kompromiss muss ausgeglichen sein, um die Einführung von Modern Standby für Systeme mit dGPUs zu erleichtern und die bestmögliche Benutzererfahrung zu bieten. Dieses Dokument zielt darauf ab, das dGPU-Problem ausführlich zu erläutern und Anleitungen zur Unterstützung von DGPUs in modernen Standby-Systemen zu erläutern.

Aktueller dGPU-Support

Das Problem der Unterstützung von dGPUs kann in zwei separaten Kategorien betrachtet werden: (1) Add-In-dGPU-Karten und (2) gelöteten dGPUs. Das folgende Diagramm beschreibt die Situation und Anleitungen in diesen Szenarien. Die restlichen Abschnitte erweitern die in dieser Tabelle hervorgehobenen Informationen und Anforderungen.

Während das Ökosystem auf eine bessere dGPU-Leistung hinarbeitet: :

Plug-in-dGPUs: dGPUs, die in einen offenen PCIe-Steckplatz gesteckt werden, entweder in einer Versandkonfiguration oder unabhängig von einem Endbenutzer hinzugefügt. Dies gilt für jedes System mit einem offenen PCIe-Steckplatz, der eine Add-In-dGPU-Karte unterstützt.

  • Systeme müssen den PCI ECN implementieren, damit die dGPU ihren D3cold-Zustand betreten kann.
  • Die dGPU muss in der Lage sein, D3cold einzugeben
  • Die Selbstaktualisierungsunterstützung in der dGPU ist optional – wenn sie unterstützt wird, bietet das System eine bessere Benutzererfahrung, indem es die „Instant On“-Fähigkeit bereitstellt, Energievorschriften sollten berücksichtigt werden.
  • Der Schwellenwert für das Betriebssystem, das die Self-Refresh-Funktion von dGPU verwendet, beträgt 300 MB in VRAM
  • Wenn die dGPU keine Selbstaktualisierung verwendet (keine Unterstützung oder Funktion im Grafiktreiber deaktiviert), erzwingt Microsofts Directed PoFx (DFx)-Framework die dGPU nach zwei Minuten im Leerlauf von D0 herunter – VRAM wird ausgelagert
  • Systeme mit dGPUs sind von der Anforderung in HLK-Tests für eine Wiederaufnahmelatenz von einer Sekunde aus dem modernen Standby ausgenommen, da das Offloading von VRAM einen Latenztreffer verursacht

Gelötete Designs: Dies umfasst sowohl High-End-Notebooks oder All-in-Ones, die mit einer dGPU ausgeliefert werden, als auch Hybridsysteme, die sowohl eine integrierte als auch eine diskrete GPU verwenden.

  • Die dGPU muss in der Lage sein, in den Zustand D3cold versetzt zu werden.
  • Die Self-Refresh-Unterstützung in der dGPU wird empfohlen – wenn unterstützt, bietet das System eine bessere Benutzererfahrung, indem die "Instant On"-Funktion bereitgestellt wird, das System muss jedoch sorgfältig entwickelt werden, um die Gesetzlichen Vorschriften zu erfüllen.
  • Der Schwellenwert für das Betriebssystem, das die Self-Refresh-Funktion von dGPU verwendet, beträgt 300 MB in VRAM
  • Wenn die dGPU keine Selbstaktualisierung durchführt (es fehlt die Unterstützung oder das Feature ist im Kernelmodus-Grafiktreiber deaktiviert), erzwingt das Direct PoFx (DFx)-Framework von Microsoft, dass die dGPU nach 2 Minuten im Leerlauf von D0 heruntergesetzt wird—VRAM wird entladen.
  • Systeme mit dGPUs werden von der Anforderung in HLK-Tests für eine 1-Sekunden-Fortsetzungslatenz von Modern Standby ausgenommen, da das Entladen von VRAM einen Latenztreffer verursacht.

Im Wesentlichen gibt es einige Hauptpunkte zur dGPU-Unterstützung in modernen Standby-Designs:

  • Systemhersteller sollten zunächst sicherstellen, dass ihre Systeme die Energievorschriften erfüllen, und dann für die bestmögliche Benutzererfahrung in Bezug auf die Wiederaufnahme der Zeit aus dem modernen Standbymodus optimieren.
  • Das Ökosystem entwickelt sich in Richtung Selbstaktualisierungs-VRAM als Voraussetzung, um eine großartige Benutzererfahrung bei gleichzeitig geringerem Stromverbrauch der diskreten GPU aufrechtzuerhalten.
    • Es liegt im besten Interesse des Ökosystems, in die Verbesserung des GDDR-Stromverbrauchs zu investieren.

dGPU-VRAM-Selbstaktualisierungsverhalten

In diesem Abschnitt werden die aktuellen Heuristiken rund um das DGPU-Selbstaktualisierungsverhalten erläutert. Systemdesigner sollten dies berücksichtigen, wenn sie ihr Systemverhalten und die Leistung auswerten, da diese vom Szenario abhängig sind, insbesondere von der Selbstaktualisierungsfunktion der dGPU und davon, wie viel Inhalt derzeit in VRAM gespeichert ist.

Ab Windows 10 ist das Betriebssystem klug, die Entscheidung zu treffen, wann die Selbstaktualisierung verwendet werden soll und wann die Selbstaktualisierung nicht verwendet werden soll. Wenn der VRAM beim Übergang in den Ruhezustand relativ leer ist, wird er ausgeschaltet, ohne die Selbstauffrischung zu verwenden. Andernfalls wird selbstaktualisierende VRAM verwendet. Der Schwellenwert für dieses Verhalten wird derzeit als 300 MB Inhalt in VRAM definiert und kann in Zukunft weiter optimiert werden. In der folgenden Tabelle werden die aktuellen Heuristiken zur Selbstaktualisierung beschrieben:

Wechseln in den modernen Standbymodus mit weniger als= 300 MB VRAM in Verwendung Eingabe des modernen Standbymodus mit > 300 MB VRAM im Einsatz

dGPU mit Self-Refresh-VRAM-Unterstützung

  • VRAM wird entfernt
  • D3cold mit abgeschaltetem VRAM
  • VRAM wird beibehalten
  • D3cold mit VRAM in Selbstaktualisierung

dGPU ohne Selbstaktualisierungs-VRAM

  • VRAM wird entfernt
  • D3cold mit abgeschaltetem VRAM
  • VRAM wird beibehalten
  • dGPU bleibt in D0
  • Das Directed PoFx (DFx)-Framework von Microsoft zwingt die dGPU in D3cold und entfernt VRAM nach zwei Minuten

Add-in-dGPU-Kartenlösung

In diesem Abschnitt werden die Anforderungen für die Unterstützung einer Add-in-dGPU-Karte in einem modernen Standby-Desktopsystemdesign auf hoher Ebene beschrieben. Für spezifische Implementierungsdetails, entnehmen Sie bitte den Anleitungen der Hardwareanbieter.

Beim Erstellen eines Modernen Standby-Desktopsystems mit Unterstützung für eine Add-In-dGPU-Karte gibt es einige wichtige Anforderungen, die für eine vollständige Lösung enthalten sein müssen. Diese Anforderungen umfassen dGPU-Design, dGPU-Treiber, Hauptplatinendesign und Firmwareimplementierung.

Anforderung BESCHREIBUNG Ressourcen

Das BIOS setzt die im angeschlossenen PCI ECN spezifizierte _DSM um.

Diese Funktionen ermöglichen es dem PCIe-Gerätetreiber, mit der Plattform über die Aux-Leistung zu verhandeln, die für die dGPU-Karte erforderlich ist, um die Selbstaktualisierung in D3cold zu unterstützen.

_DSM-Ergänzungen für die Energieverwaltung von Laufzeitgeräten

Der SoC kann bis zu 1A Hilfsleistung für den PCIe-Steckplatz bereitstellen.

Dies wird im ECN für die PCI-Spezifikation angegeben. dGPU-Stromverbrauch variiert je nach Karte, sodass der SoC in der Lage sein muss, die erforderliche Leistung bereitzustellen, um die Selbstaktualisierung auf Karten zu unterstützen, die bis zu 1A variiert.

Siehe Implementierungsrichtlinien des Hardwareanbieters

Die dGPU-Karte unterstützt selbstaktualisierende VRAM und D3cold

Selbstaktualisierende VRAM ermöglicht es der dGPU-Karte, in D3Cold einzutreten, während der Speicherinhalt für eine kurze Wiederaufnahmelatenz erhalten bleibt. Dies ist wesentlich für das Modern Standby-Versprechen eines „Instant On“-Erlebnisses.

Siehe Implementierungsleitfaden des dGPU-Designers