__rdtscp

Microsoft-spezifisch

Generiert die Anweisung, schreibt in den rdtscpTSC_AUX[31:0] Arbeitsspeicher und gibt das Ergebnis des 64-Bit-Zeitstempelzählers (TSC) zurück.

Syntax

unsigned __int64 __rdtscp(
   unsigned int * AUX
);

Parameter

AUX
[out] Zeiger auf eine Position, die den Inhalt des computerspezifischen Registers TSC_AUX[31:0]enthält.

Rückgabewert

Eine 64-Bit-ganzzahlige Teilstrichanzahl ohne Vorzeichen.

Anforderungen

Intrinsic Aufbau
__rdtscp x86, x64

Headerdatei<intrin.h>

Hinweise

Die __rdtscp systeminterne Generiert die rdtscp Anweisung. Um die Hardwareunterstützung für diese Anweisung zu ermitteln, rufen Sie die __cpuid systeminterne Version auf InfoType=0x80000001 , und überprüfen Sie Bit 27 von CPUInfo[3] (EDX). Dieses Bit ist 1, wenn die Anweisung unterstützt wird, und 0 andernfalls. Wenn Sie Code ausführen, der die systeminterne Hardware verwendet, die die rdtscp Anweisung nicht unterstützt, sind die Ergebnisse unvorhersehbar.

Diese Anweisung wartet, bis alle vorherigen Anweisungen ausgeführt wurden und alle vorherigen Lasten global sichtbar sind. Es handelt sich jedoch nicht um eine Serialisierungsanweisung. Weitere Informationen finden Sie in den Intel- und AMD-Handbüchern.

Die Bedeutung des Werts in TSC_AUX[31:0] hängt vom Betriebssystem ab.

Beispiel

#include <intrin.h>
#include <stdio.h>
int main()
{
    unsigned __int64 i;
    unsigned int ui;
    i = __rdtscp(&ui);
    printf_s("%I64d ticks\n", i);
    printf_s("TSC_AUX was %x\n", ui);
}
3363423610155519 ticks
TSC_AUX was 0

Ende Microsoft-spezifisch

Siehe auch

__rdtsc
Systeminterne Compiler