Re: [分享] 提升时间精度的方法

楼主: anfranion (南‧生命的意義是經歷)   2012-03-25 10:45:27
刚刚研究了一下发现
其实TmStat里的rTime好像就是这个值
给大家参考一下囉:P
p.s. 其实我还好奇为什么uTime用的getrusage会这么不稳(不准)
我去查后发现 理论上这是最准的方法才对...
难道说真的太快了所以都变成0us了吗=口=
※ 引述《craig08 (小佑)》之铭言:
: ※ 编辑: tyrueiwo 来自: 114.42.160.23 (03/12 22:17)
: ※ 编辑: tyrueiwo 来自: 114.42.160.23 (03/12 22:18)
: 推 koalahsu:tm_usage 可以取得 double 有小数点 03/12 22:29
: 推 koalahsu:如果想要精度更大一些可以找找这类的文章 03/12 22:30
: 推 koalahsu:像是使用 clock_t 不过我印象中用 tm_usage,应该也没有差 03/12 22:30
: 推 koalahsu:很多, 建议可以跑比较大的 testcase 就会有差别 03/12 22:31
: 推 koalahsu:tm_usage 是用 sys/times.h 的 tms 03/12 22:37
: → johnjohnlin:timeval tvS , tvE; 03/13 22:11
: → johnjohnlin:gettimeofday ( &tvS , NULL ); 03/13 22:11
: → johnjohnlin: //Do programming here 03/13 22:11
: → johnjohnlin:gettimeofday ( &tvE , NULL ); 03/13 22:11
: → johnjohnlin:1000000*(tvE.tv_sec-tvS.tv_sec)+tvE.tv_usec-tvS.tv 03/13 22:12
: → johnjohnlin:_usec 就是总时间 (in us) 03/13 22:13
: 推 xiaohao:include<unistd.h> 03/17 19:21
: ==============================================================================
: 实际测试了一下 推文中强强林(johnjohnlin)的方法确实可以提升精度
: 甚至可以量到86us这种数字
: 并且重复执行一种sort的实验值误差在10%以内
: 比起使用tm_usage一下0us一下10000us跳来跳去还robust多了
: 提供给大家参考~
作者: ntuptter (北极)   2012-04-05 15:11:00
喔~~

Links booklink

Contact Us: admin [ a t ] ucptt.com