Bagikan melalui


__rdtscp

Khusus Microsoft

rdtscp Menghasilkan instruksi, menulis TSC_AUX[31:0] ke memori, dan mengembalikan hasil Time Stamp Counter (TSC) 64-bit.

Sintaks

unsigned __int64 __rdtscp(
   unsigned int * AUX
);

Parameter

AUX
[out] Pointer ke lokasi yang akan berisi konten register TSC_AUX[31:0]khusus komputer .

Nilai hasil

Jumlah centang bilangan bulat yang tidak ditandatangani 64-bit.

Persyaratan

Intrinsik Sistem
__rdtscp x86, x64

File header<intrin.h>

Keterangan

Intrinsik __rdtscp menghasilkan rdtscp instruksi. Untuk menentukan dukungan perangkat keras untuk instruksi ini, panggil __cpuid intrinsik dengan InfoType=0x80000001 dan periksa bit 27 dari CPUInfo[3] (EDX). Bit ini adalah 1 jika instruksi didukung, dan 0 sebaliknya. Jika Anda menjalankan kode yang menggunakan intrinsik pada perangkat keras yang tidak mendukung rdtscp instruksi, hasilnya tidak dapat diprediksi.

Instruksi ini menunggu hingga semua instruksi sebelumnya dijalankan dan semua beban sebelumnya terlihat secara global. Namun, ini bukan instruksi serialisasi. Untuk informasi selengkapnya, lihat manual Intel dan AMD.

Arti nilai dalam TSC_AUX[31:0] tergantung pada sistem operasi.

Contoh

#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

END Khusus Microsoft

Lihat juga

__rdtsc
Intrinsik pengkompilasi