获取CPU周期

时间:2016-07-31 07:52:21

标签: c

是否可以在C程序中获得代码的精确个CPU周期数?

我尝试使用C函数clock和程序集rdtsc,但我只有一个非常粗略的近似值,即使使用循环,我也无法获得足够的精确度。

您可以在下面找到我尝试过的代码(失败)。例如,为了获得增量的循环,我想做

clk("++foo") - clk("")

希望得到“1”。

#define __clk(x)    tmp=clock() ;\
x;\
return abs(tmp-clock());

inline int clk(char* x)
{
    __clk(x)
}

你知道有没有办法得到我想要的东西?我目前在Debian上做C,但如果需要我也有一个Windows系统,如果只有另一种语言提供解决方案,那不是问题。

0 个答案:

没有答案