当前位置: 技术问答>linux和unix
Linux中怎么精确获取cpu主频和cpu周期
来源: 互联网 发布时间:2017-05-21
本文导语: 首先我当然知道用cat /proc/cpuinfo 我的机器得到的结果是1600Mhz 然而在用程序进行测试时,我发现不是这样。 ---------------------------------------------------------------------- 当然我最初的需求是想获取cpu的周期,我要根据cpu周期...
首先我当然知道用cat /proc/cpuinfo
我的机器得到的结果是1600Mhz
然而在用程序进行测试时,我发现不是这样。
----------------------------------------------------------------------
当然我最初的需求是想获取cpu的周期,我要根据cpu周期做一个相对精确的延时,比如说几十个ns。
我在网上找到一段程序。
static inline uint64_t get_cycle_count()
{
unsigned int lo,hi;
__asm__ __volatile__ ("rdtsc" : "=a" (lo), "=d" (hi));
return ((uint64_t)hi
我的机器得到的结果是1600Mhz
然而在用程序进行测试时,我发现不是这样。
----------------------------------------------------------------------
当然我最初的需求是想获取cpu的周期,我要根据cpu周期做一个相对精确的延时,比如说几十个ns。
我在网上找到一段程序。
static inline uint64_t get_cycle_count()
{
unsigned int lo,hi;
__asm__ __volatile__ ("rdtsc" : "=a" (lo), "=d" (hi));
return ((uint64_t)hi