__rdtscp
Microsoft 전용
rdtscp
명령을 생성하고 메모리에 쓰고 TSC_AUX[31:0]
64비트 TSC(타임스탬프를 카운터) 결과를 반환합니다.
구문
unsigned __int64 __rdtscp(
unsigned int * AUX
);
매개 변수
보조
[out] 컴퓨터별 레지스터 TSC_AUX[31:0]
의 내용을 포함할 위치에 대한 포인터입니다.
반환 값
부호 없는 64비트 정수 틱 수입니다.
요구 사항
Intrinsic | 아키텍처 |
---|---|
__rdtscp |
x86, x64 |
헤더 파일<intrin.h>
설명
내장 함수는 __rdtscp
명령을 생성합니다 rdtscp
. 이 명령에 대한 하드웨어 지원을 확인하려면 내장 함수를 __cpuid
InfoType=0x80000001
호출하고 27의 CPUInfo[3] (EDX)
비트 27을 확인합니다. 명령이 지원되는 경우 이 비트는 1이고, 그렇지 않으면 0입니다. 명령을 지원하지 rdtscp
않는 하드웨어에서 내장 함수를 사용하는 코드를 실행하면 결과를 예측할 수 없습니다.
이 명령은 이전의 모든 명령이 실행되고 이전의 모든 로드가 전역적으로 표시될 때까지 기다립니다. 그러나 직렬화 명령은 아닙니다. 자세한 내용은 Intel 및 AMD 설명서를 참조하세요.
값 TSC_AUX[31:0]
의 의미는 운영 체제에 따라 달라집니다.
예시
#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
Microsoft 전용 종료