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:
- Verwenden Sie eine einfache Instrumentierung, die keine starke Korrelation mit den Begrenzungen von Grafikbefehlen erzeugt.
- Der Treiber muss in der Lage sein, den GPU-Zeitstempel am Ende der Grafikpipeline abzutasten.
- 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) |