#include <crtdefs.h>
#include <stdio.h>
#include <windows.h>
#include <mmsystem.h>
#ifdef __cplusplus
extern "C" {
#endif
_CRTIMP void __cdecl _wassert(_In_z_ const wchar_t* _Message, _In_z_ const wchar_t* _File, _In_ unsigned _Line);
#ifdef __cplusplus
}
#endif
#define ENFORCE(_Expression) (void)((!!(_Expression)) || (_wassert(_CRT_WIDE(#_Expression),_CRT_WIDE(__FILE__),__LINE__),0))
int main ( void )
{
unsigned __int64 timeStart64, cpu_fm64;
unsigned __int32 timeToRDTSC;
LARGE_INTEGER pfq, lpQFCount;
ENFORCE(QueryPerformanceFrequency(&pfq));
ENFORCE ( SetThreadAffinityMask ( GetCurrentThread(), 1 ) );
HANDLE CurProcessHandle = GetCurrentProcess();
HANDLE CurThreadHandle = GetCurrentThread ();
DWORD OldPriClassFlags = GetPriorityClass ( CurProcessHandle );
DWORD OldPriThreadFlags = GetThreadPriority( CurThreadHandle );
ENFORCE ( SetPriorityClass ( CurProcessHandle, REALTIME_P
rdtsc 指令测试 cpu 频率
最新推荐文章于 2023-03-23 11:22:14 发布
该博客介绍了一种使用rdtsc汇编指令来测试CPU频率的方法。通过设置线程优先级,调用QueryPerformanceFrequency和QueryPerformanceCounter函数获取计数,并在循环中利用rdtsc进行计时,最后计算出CPU频率。代码中还包括了错误检查和清理操作。
摘要由CSDN通过智能技术生成