Freigeben über


PFND3DDDI_SETMARKERMODE Rückruffunktion (d3dumddi.h)

Benachrichtigt den Anzeigetreiber im Benutzermodus, dass er einen Typ von ETW-Markerereignis (Event Tracing for Windows) unterstützen soll. Optional implementiert von Windows Display Driver Model (WDDM) 1.3 und höher Treibern, die auf Microsoft Direct3D Level 9-Hardware ausgeführt werden. (Siehe Anforderungen unter Verbesserungen der Direct3D-Renderingleistung.) Für erweiterte Hardware sollten Treiber die SetMarkerMode-Funktion implementieren.

Syntax

PFND3DDDI_SETMARKERMODE Pfnd3dddiSetmarkermode;

HRESULT Pfnd3dddiSetmarkermode(
  HANDLE hDevice,
  D3DDDI_MARKERTYPE Type,
  UINT Flags
)
{...}

Parameter

hDevice

Ein Handle für das Anzeigegerät (Grafikkontext).

Type

Ein Wert aus der D3DDDI_MARKERTYPE-Enumeration , der den Typ des Markerereignisses angibt, das der Treiber unterstützen soll.

Flags

Ein UINT-Wert , der angibt, ob der Treiber benutzerdefinierte Informationen in Befehlspuffern bereitstellen soll. Wenn auf D3DDDI_SETMARKERMODE_CUSTOMDRIVEREVENTS festgelegt ist, sollte der Treiber Befehlspuffer mit Anmerkungen versehen und mit benutzerdefinierten Ereignisinformationen instrumentieren. Andernfalls sollte der Treiber Befehlspuffer nicht kommentieren.

Die Anmerkung kann in Form einer Textzeichenfolge im Gebietsschema Englisch-USA oder in Form eines Indexwerts zu einer Position in einer Zeichenfolgentabelle vorliegen. Für die letztere Option muss der Treiber auch eine Funktion implementieren, die die Zeichenfolgen beschreibt, die die Indexwerte angeben.

Rückgabewert

Gibt S_OK oder ein entsprechendes Fehlerergebnis zurück, wenn die Funktion nicht erfolgreich abgeschlossen wird.

Hinweise

Befolgen Sie diese Richtlinien, wenn Sie Markerereignisse vom Profiltyp in Ihrem Benutzermodustreiber einrichten, angegeben durch den D3DDDIMT_PROFILE Typ:

  1. Verwenden Sie eine einfache Instrumentierung, die keine starke Korrelation mit den Begrenzungen von Grafikbefehlen erzeugt.
  2. Der Treiber muss in der Lage sein, den GPU-Zeitstempel am Ende der Grafikpipeline abzutasten.
  3. Verwenden Sie keine Samplingbefehle, die eine hohe Leistungsbelastung für die Grafikpipeline verursachen, z. B. Wait-for-idle-Befehle. Um Profiltypmarkerereignisse instrumentieren zu können, sollte Ihr Treiber die Pipeline oder Caches nicht leeren müssen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8.1,WDDM 1.3 und höher
Unterstützte Mindestversion (Server) Windows Server 2012 R2
Zielplattform Desktop
Kopfzeile d3dumddi.h (include D3d10umddi.h)

Weitere Informationen

D3DDDI_MARKERTYPE

SetMarkerMode