我必须运行一系列模拟并保存结果。因为默认情况下Matlab只使用一个核心,我想知道是否可以打开多个工作任务并为它们分配不同的模拟运行?
答案 0 :(得分:0)
您可以在单独的MATLAB实例中运行每个模拟,并让操作系统处理核心分配过程。
一个主MATLAB可以同步每个子实例检查,例如,如果模拟结果文件存在。
答案 1 :(得分:0)
我有同样的问题,但我没有真正理解如何在MatLab中制作它。 matlab中的文档太先进了,无法知道如何制作它。
由于我正在使用Ubuntu,我找到了一种方法来完成从MatLab调用unix命令并使用并行GNU命令的工作
所以我可以将我的模拟与4个内核并行运行。
unix('parallel --progress -j4 flow > /dev/null :::: Pool.txt','-echo')
您可以在链接中找到更多信息 Shell, run four processes parallel
可以在https://www.gnu.org/software/parallel/找到该语法的详细信息 但我可以告诉你,
- 进度显示进度状态
-j4告诉您要并行的数量或作业
flow是我模拟器的名称
/ dev / null只是为了避免模拟器的屏幕运行输出显示
Pool.txt是我用所需模拟器输入制作的文件,基本上是路径和主模拟器文件。
回声我现在不记得是什么:D