我在 Windows 7 下使用 MATLAB 2012a,并执行了一些密集的代码,我的意思是内存使用和处理时间方面的密集,但是,代码在 Windows 上运行良好。现在,我将操作系统更改为 ubuntu 12.04,并安装了 Matlab 2013a。使用的内存量比在 Windows 中少得多,但 matlab 执行相同代码所花费的时间非常高——非常高。
我需要提到的是,除了将符号替换作为参数之一的稀疏语句之外,我的代码不包含任何可能需要花费如此大量时间的内容,如下所示
K=zeros(Np,Np);
for i=1:ord
K=K+sparse(t(1:ord,:),repmat(t(i,:),ord,1),double(subs(Kv(:,i),Arg(Kv,1,1,6),Arg(Kv,1,2,6))),Np,Np);
end
注意:Kv 是一个符号矩阵,Arg 是一个提供 OLD 和 NEW 的函数,它取决于许多全局变量。
我感觉我错过了在 ubuntu 中添加一些可能有助于加速 Matlab 代码执行的东西。 有什么想法吗?
最佳答案
我在 Windows 上遇到了类似的问题,但我相信 Ubuntu LTS 上的解决方案是相同的。 因此,如果增加 Matlab 的 Java 堆内存,Matlab 会消耗更多的系统内存,但速度会更快。
为此,请访问: 文件->首选项->常规->Java堆内存并增加到最大。 默认值是128,太小了。
关于matlab - ubuntu下Matlab代码执行速度非常慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17995178/