matlab打开慢的原因,Matlab运行速度/效率受哪些因素影响?

一.出现的问题/现象:

近期调试程序时,发现同一段matlab程序在配置相似的电脑上运行时间相差5倍以上:

83d53fbcc75cc952ef6471c127e35e86.png   

87d6b6f43b86b0c44d90f87a61dac096.png

右图电脑的配置和左图电脑配置相似,只是左图内存更大(左图电脑内存为16GB,右图为8GB),但左图程序运行速度不仅没有更快,反而比右图慢了5倍以上,便开始分析是什么原因导致这一现象。

二.查阅相关资料,分析可能原因:

影响其运行时间的因素有很多,首先想到电脑硬件配置不同,可是两台电脑只有内存不同,其他基本相同,便寻找其他可能原因,想到在嵌入式板级编程中影响程序编译时间的因素有编译优先级等因素影响,便开始把两边matlab参数设置成一样。

三.实验验证:

matlab中利用tic;  toc; 函数可以测量一段程序的运行时间,用法:

1 tic;

2 你想测量的程序;

3 toc;

这里为了结果可靠性更高,取十次实验的时间和再平均后的值作为一次实验的结果,代码如下:

1 for mmm = 1 : 10

2 tic;

3 你想测量的程序;

4 end

5 timeTotal = toc;            %总时间

6 timeAve = timeTotal/ length(mmm) %平均时间

在仅控制了matlab版本、文件目录、matlab设置参数相同后,得到的运行时间基本相同:

82ade916677c12ae173ed3c4314e9de9.png                 

2efddcbe9811b24ead6ba9d2fecd7806.png

图1比图2的代码运行时间仍然快一些,这里猜测可能是电脑运行内存更大(左图为16GB、右图为8GB)、系统当前运行的软件不同致使资源占用率不同所影响。

四.得出结论:

1.matlab程序运行的速度受到如下因素影响:

(1)matlab版本(有较大影响,以本篇博客出现的现象为例);

(2)电脑配置(CPU主频、内存大小、计算机位数等);

(3)电脑当前运行状态(资源占用率等,因为电脑每时每刻的资源占用率都不一样,因此这一点为测量matlab程序运行时间带来较大随机性);

(4)matlab文件和所调用文件的目录深度;

(5)matlab运行的程序复杂度(循环的次数,开辟的空间大小,是否有画图以及是几维的画图等);

(6)matlab自身的设置(如默认的变量长度和精度等设置不同会导致开辟的内存空间大小不同);

(7)每次运行程序是否预分配内存;

(8)是否是第一次运行(和第七条有相似的道理,第二次运行程序可以使用第一次已经开辟的内存空间;很多人把这一点理解为matlab的“记忆性”);

2.同一段matlab程序在同一机器上每次运行时间亦不同:

(1)第一次运行时间较长;

(2)非首次运行时间主要受到电脑运行状态影响。

参考:

标签:电脑,哪些因素,程序,左图,时间,matlab,效率,运行,Matlab

来源: https://www.cnblogs.com/CCWangsj/p/13125030.html

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值