D3DKMT_PRESENT_STATS Struktur (d3dkmthk.h)

Die D3DKMT_PRESENT_STATS-Struktur beschreibt die vorhandenen status für ein Renderinggerät.

Syntax

typedef struct _D3DKMT_PRESENT_STATS {
  [out] UINT                         PresentCount;
  [out] UINT                         PresentRefreshCount;
  [out] UINT                         SyncRefreshCount;
  [out] D3DKMT_ALIGN64 LARGE_INTEGER SyncQPCTime;
  [out] D3DKMT_ALIGN64 LARGE_INTEGER SyncGPUTime;
} D3DKMT_PRESENT_STATS;

Member

[out] PresentCount

Ein UINT-Wert, der angibt, wie oft der installierbare OpenGL-Clienttreiber (ICD) die D3DKMTPresent-Funktion auf einem Renderinggerät oder einer Swapchain aufgerufen hat. Nachdem der Maximalwert erreicht wurde, beginnt PresentCount bei null. Wenn ein neues Renderinggerät erstellt wird, wird PresentCount mit null initialisiert. Das Betriebssystem verwaltet einen aktuellen Zähler für jede swap chain, die erstellt wird.

[out] PresentRefreshCount

Ein UINT-Wert, der angibt, wie oft der Anzeigecontroller einen neuen Videoframe ausgibt. Dies geschieht zu Beginn jeder vertikalen Rückverfolgungsphase. Das Betriebssystem verwaltet einen aktuellen Aktualisierungsindikator für jede Ausgabe des Videoanzeigecontrollers im Betriebssystem. PresentRefreshCount wird mit einem nicht angegebenen Wert initialisiert.

[out] SyncRefreshCount

Ein UINT-Wert, der die Anzahl der zuletzt erfassten Zeitsteuerungsinformationen in den SyncQPCTime - und SyncGPUTime-Membern angibt.

[out] SyncQPCTime

Die CPU-Zeit (Computer Processing Unit), zu der der aktuelle Videoframe ausgegeben wurde (d. a. die CPU-Zeit, zu der die vertikale Nachverfolgung gestartet wurde).

[out] SyncGPUTime

Die GPU-Zeit (Grafikverarbeitungseinheit), zu der der aktuelle Videoframe ausgegeben wurde (d. a. die GPU-Zeit, zu der die vertikale Nachverfolgung gestartet wurde).

Hinweise

Wenn ein vorhandener Vorgang eingestellt wird, verwaltet das Betriebssystem eine Korrespondenz (Zuordnung) zwischen dem Wert in PresentCount und dem Wert in PresentRefreshCount. Das heißt, wenn das Betriebssystem einen aktuellen Vorgang als gescannten Videoframe abschloss, wird der Wert in PresentRefreshCount , mit dem der aktuelle Vorgang abgeschlossen wurde, dem Wert in PresentCount des eingestellten aktuellen Vorgangs zugeordnet.

Das Betriebssystem verwaltet Zeitinformationen innerhalb eines Renderinggeräts und ordnet die Zeitsteuerungsinformationen einer Anzeigeausgabe zu. Wenn die GPU die GPU-Zeit (SyncGPUTime) beibehalten kann, wird die GPU-Zeit mit einer gerätespezifischen Häufigkeit ausgeführt. Damit Anwendungen die GPU-Zeit mit anderen Vorgängen im System in Beziehung setzen können, verwaltet das Betriebssystem eine Übereinstimmung zwischen GPU-Zeit und CPU-Zeit (SyncQPCTime). Wenn die GPU diese GPU-Zeit nicht beibehalten kann, behält das Betriebssystem nur die CPU-Zeit bei, und die zugehörige GPU-Zeit ist immer 0.

Aktuelle Statistiken können für Geräte im Fenstermodus nicht funktionieren. Im Fenstermodus ist jedes Strukturelement auf 0 festgelegt.

Hinweis Das Betriebssystem aktualisiert möglicherweise nicht die Mitglieder SyncRefreshCount, SyncQPCTime und SyncGPUTime für jeden Frame.
 

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista
Kopfzeile d3dkmthk.h (einschließlich D3dkmthk.h)

Weitere Informationen

D3DKMTPresent

D3DKMT_DEVICEPRESENT_STATE