rdtsc函数及用法
(2013-05-23 09:54:25)分类: linux相关 |
#include
static inline __u64 get_cycles(void)
{
__u32 timehi, timelo;
asm("rdtsc":"=a"(timelo),"=d"(timehi):);
return (__64)(((__u64)timehi)<<32 |
(__u64)timelo);
}
调用方式
void main()
{
__u64 tick_1 = get_cycles();
//some_program
__u64 tick_2 = get_cycles();
cout<<"function running time: "<<(tick_2 - tick_1)
/ CPU_FRQ<<endl;
}