Matlab速度问题

时间:2015-04-20 09:48:15

标签: matlab

任何人都可以帮助了解问题的原因/在哪里?

我正在将基本matlab函数(如mean.m)的速度与两台matlab版本2013b和2014b与同一台机器进行比较。

并且令人惊讶的是,2013b版本比2014b快得多.... 你们有些人有同样的问题吗?

2014b的平均概况摘要 - > 0024 2013b的平均值概况 - > 0013

像我的脚本一样,我使用平均功能,实际上在同一个程序的运行时间不同,在一个或另一个版本中是巨大的...... 怎么回事?

计算个人资料时间的代码:

A=rand(100,1)
 time_mean=zeros( 1000,1)
for i=1:1000
 tic
 mean(A);
 time_mean(i)= toc;
end

1 个答案:

答案 0 :(得分:0)

首先,使用分析器比较各版本的时序并不明智 - 它旨在识别单个MATLAB版本中的慢速部分。其次,你应该使用timeit来计算这种事情。我在我的Windows机器上比较了各种尺寸的R2013b和R2014b,并且可以看到在R2014b中看起来是一个小的固定开销,大约0.1ms。

代码基本上是:

for exp = 1:6
    A = rand(10^exp, 1); 
    t(exp) = timeit(@()mean(A));
end
semilogy(1:6, t);

Plot of execution time for vector mean

如果您要拨打mean的大量个人电话,最好还是看看是否可以将这些电话形成一个电话 - MATLAB' mean可以按列或沿着列进行操作矩阵的行...