繁体   English   中英

测量执行时间短

[英]Measuring short execution time

time_start();

int op = 0;
for(int i = 1; i <= n; i++)
    op += arr[i]*pow(x, i);

time_stop();

这是我要测量的代码部分,time_start()和time_stop()函数只是将clock()输出保存在某个地方,然后execute_time()返回差值,给出执行时间。

问题是对于<50000,输出仅为0ms或1ms。 这是正确的输出吗? 这可以更精确吗?

您需要在运行时和计时器代码的分辨率之间具有足够的“比例”,以获取准确且可测量的结果。 最简单的解决方案是对要测试的一小段代码进行数百次(或数千次)迭代。

但是,任何方法都有可能产生缓存效果,因此请确保您正在衡量自己的实际想法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM