尽管 MATLAB 作为一种数学语言很出色,但它的速度却没有它想象的那么快。我想知道加快运行 MATLAB 代码的一般做法是什么?例如,我知道如果不是运行 for 循环,而是可以以向量/矩阵格式进行计算,那么他/她将看到运行代码的加速。
我想知道还有什么其他建议。
尽管 MATLAB 作为一种数学语言很出色,但它的速度却没有它想象的那么快。我想知道加快运行 MATLAB 代码的一般做法是什么?例如,我知道如果不是运行 for 循环,而是可以以向量/矩阵格式进行计算,那么他/她将看到运行代码的加速。
我想知道还有什么其他建议。
Here are a few basic performance tips:
bsxfun
) 如果您正在执行许多易于并行化的操作,parfor
则会自动并行化您的for
循环: http: //www.mathworks.com/help/toolbox/distcomp/parfor.html
安装光速。
我最近经历了在我的 Mac 上安装 Tom Minka 的 Lightspeed 的令人沮丧的过程。在此过程中,我学到了一些值得与其他 Mac 用户分享的艰巨经验。我的系统有以下规格 OS X 版本 10.8.5 Xcode 版本 4.6.3 Matlab 版本 2011a
1) 确保 Lightspeed 安装在名称中没有空格的路径上。我错误地将它放在“库/应用程序支持/Matlab”中,这给我带来了无穷无尽的麻烦。特别是,它导致了 Tomer Levinboim (levinboim.blogspot.co.nz) 报告的相同问题,并增加了他的修复没有完全解决问题的问题!
2) 阅读 Michel Valstar 的笔记“在 Mac 上编译 Matlab Mex 文件”并安装推荐的 Mathworks 补丁 ( http://www.mathworks.com/matlabcentral/answers/94092 )。此补丁应用了 Levinboim 确定的所有需要的标志/选项更改。
3) 将光速文件夹内 install_lightspeed.m 文件中的 options.COMPFLAGS 行更改为指向:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk
4) 在 Matlab 中检查当前路径是否指向 Lightspeed 文件夹。运行命令 install_lightspeed。如果成功运行 test_lightspeed。您现在应该拥有 Lightspeed 的工作版本!
5) 路径设置在会话之间保持不变,因此自述文件中建议的 startup.sh 方法在 Mac 上似乎是不必要的。但是,如果您想走这条路,请先阅读:
startup.m 应该在哪里?
http://obasic.net/set-your-customized-startup-file-for-matlab。
我刚刚在这里找到了这个:Writing Fast MATLAB Code。由 Pascal Getreuer 和这里:Lightspeed 工具箱。好东西...