Condividi tramite


__rdtscp

Specifici di Microsoft

Genera l'istruzione di rdtscp , scrittura TSC_AUX[31:0] alla memoria e restituisce il contatore di timestamp a 64 bit (risultato diTSC) .

unsigned __int64 __rdtscp(
   unsigned int * Aux
);

Parametri

  • [out] Aux
    Puntatore a una posizione che conterrà il contenuto del registro computer-specifico TSC_AUX[31:0].

Valore restituito

Un numero Integer senza segno a 64 bit.

Requisiti

Intrinseco

Architettura

__rdtscp

Famiglia 0Fh AMD NPT o versioni successive

File di intestazione <intrin.h>

Note

Questa funzione intrinseca genera l'istruzione di rdtscp . Per determinare il supporto hardware in questa istruzione, chiamare la funzione intrinseca di __cpuidcon InfoType=0x80000001 e il bit di controllo, 27 di CPUInfo[3] (EDX). Questo bit è altrimenti 1 se l'istruzione è supportata e 0. Se si esegue il codice che utilizza questa funzione intrinseca sull'hardware che non supporta l'istruzione di rdtscp , i risultati sono imprevedibili.

Avviso

a differenza di rdtsc, rdtscp è un'istruzione serializzante; tuttavia, il compilatore può spostare il codice che delimitano questa funzione intrinseca.

Interpretazione del valore di TSC in questa generazione dell'hardware differisce da quella nelle versioni precedenti di x64. Vedere i manuali hardware per ulteriori informazioni.

Il significato del valore in TSC_AUX[31:0] dipende dal sistema operativo.

Esempio

#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);
}
  

Microsoft FINALE specifico

Copyright 2007 da Advanced Micro Devices, inc tutti i diritti riservati. Riprodotto con l'autorizzazione di Advanced Micro Devices, inc

Vedere anche

Riferimenti

__rdtsc

Intrinseci del compilatore