假设我们有两种方法或算法。假设每个代码如下:
方法1:
for i=0 to 100
print i
end for
方法2:
int x=0
w = x/2
print w
比较方法1和方法之间的计算时间的最佳方法是什么? 2? 我尝试使用Matlab代码:
t= cputime;
Method 1
e = cputime-t
但我不确定这是否是比较这些方法的性能的正确方法。
答案 0 :(得分:3)
使用timeit
功能,从2013b开始提供Matlab,但如果您使用的是旧版本,则可在file exchange上使用。tic
。这将在计时之前正确地“预热”该功能,并在内部循环中输出您的功能,并为您报告多次运行的中位时间。
否则,传统方法是在包含您的函数的循环周围使用toc
和{{1}}。
答案 1 :(得分:0)
请阅读this以获取完整信息。
n = 1e4; %Higher number results in more accurate comparison
tic;
for t=1:n
{method1}
end
toc;
tic;
for t=1:n
{method2}
end
toc;
每次都会给你时间。