我对 Matlab 中的并行计算还有些陌生。我在 C 中成功使用了 OpenMP,但在 Matlab 中无法获得更好的性能。
首先,由于我是刚接触大学的机器,因此我通过ver
在命令提示符下键入来验证我所在的机器具有并行计算工具箱,并显示: Parallel Computing Toolbox Version 5.2 (R2011b)
. 注意机器有4核
我尝试了使用parfor
vs.的简单示例for
,但for
总是获胜,尽管这可能是因为开销成本。我正在做一些简单的事情,比如这里的例子:MATLAB parfor is slow than for -- what is wrong?
在尝试将 parfor 应用到我更大更复杂的程序之前(我需要计算一个函数的 500 次评估,每次评估大约需要一分钟,所以并行化在这里会有所帮助),我非常希望看到一个具体的例子,其中parfor
beats for
。. OpenMP的例子很丰富,但是没有找到一个我可以复制和粘贴的简单例子,显示parfor
比for