登录论坛

查看完整版本 : [MATLAB基础] matlab 统计代码运行时间问题、??


xgfhahaha
2009-06-14, 22:08
我现在运行一个matlab程序代码,需要统计代码的运行时间,我分别使用了tic-toc,cputime,clock-etime等三种方法,但是发现一个相同的问题:在PC不同时间用同样的方法统计相同代码的运行时间,各不相同、、、

这是为什么啊、、??
有没有更好的、更稳定的方法来统计matlab代码的运行时间、??

先谢谢了、、、

xgfhahaha
2009-06-15, 09:50
怎么没有人回答啊、、、

郁闷、、

自己先顶一下、、、、

silas_xue
2009-06-16, 10:10
lz 仅仅说说我的个人意见吧
据我所知 如果是在matlab 这个时间是和PC的硬件及matlab版本有关系的 因而 我个人认为 他是一个只具备相对意义而非绝对意义的统计值 lz所使用的三种方法是诸多国内外文章使用matlab仿真时使用的方法 而他们在文章中说明时间前 都会声明仿真所示用的PC的硬件和Matlab的版本 相互之间的比较是相对的

xgfhahaha
2009-06-16, 19:02
恩,说的有道理、、、、、
不过,就我固定的PC机、固定的matlab版本来说,对于相同的程序代码在不同的时间来运行,所统计的运行时间都不相同(相差浮动在6%-10%),而我刚好就是要研究运行时间、、
所以,我想看看有没有相对稳定一点的统计方法、、

silas_xue
2009-06-17, 18:15
个人意见 根据程序执行的总时间考虑 如果总时间不长 10%的时间误差可以允许 在表述时间的时候 把置信度说明一下 或者把误差说明一下

未注册
2011-04-15, 07:59
我来解答,我觉得你可能没有注意这个问题,就是第一次跑代码运行时间一般比较长,第二次跑(在第一次跑的结果还在workspace里面没有清楚的前提下)的时候,程序需要预先定义的一些变量在工作区都有了这就节省了不少的时间……所以运行时间不一样……我最近也碰到类似的问题。

libralibra
2011-04-16, 02:21
恩,说的有道理、、、、、
不过,就我固定的PC机、固定的matlab版本来说,对于相同的程序代码在不同的时间来运行,所统计的运行时间都不相同(相差浮动在6%-10%),而我刚好就是要研究运行时间、、
所以,我想看看有没有相对稳定一点的统计方法、、

matlab是解释执行的,每次运行时间与你系统当前cpu负载与内存情况有关
不一样太正常了