我们用matlab编写程序进行数据运算的时候经常会遇到这种情况,就是编写完立马运行,运行速度会非常快,我们感到很满意。但是运行一段时间后,速度就不是那么理想了,恨不得推他一把。这是什么原因呢?通过一段时间的分析,我发现这个主要跟机器的内存大小有关系,也就是说你加大内存就会大大改善,跟设备的处理器运行速度关系不大。
给大家在这里提供几个方法来减缓这种问题:
首先,将顺序分解成多次运行,尽量防止一次运行过长时间。
其次,单次大内存消耗的matlab顺序运行完将其关闭,下次运行时从新开启。
再次,多次大内存消耗的matlab顺序运行完时,有条件的话最好重启计算机。
最后,将大内存消耗的matlab顺序进行混合编程(包括将m文件转成C++可用的库,或者用C++/C写然后转成MA TLA B可用的函数文件)如果可以直接用C/C++重新编写。