运行批处理并行工作
运行一个批处理作业
从MATLAB分担工作®会话在后台运行在另一个会话,您可以使用批处理
命令在脚本。
创建脚本,类型:
编辑mywave
在MATLAB编辑器中,创建一个
为
循环:为我= 1:1024 (i) =罪(我* 2 *π/ 1024);结束
保存文件并关闭编辑器。
使用
批处理
命令在MATLAB命令窗口运行脚本在一个单独的MATLAB工人:工作=批(“mywave”)
批处理
不阻止MATLAB和可以继续工作而计算。如果你需要阻止MATLAB直到工作完成,使用等待
工作对象的函数。等待(工作)
在工作完成之后,您可以检索和查看其结果。的
负载
命令转移变量工人到客户机上创建工作区,在那里您可以查看结果:负载(工作,“一个”图(一)
当工作完成后,永久删除其数据和从工作区中删除其参考:
删除(工作)清晰工作
批处理
当地职工或集群上运行您的代码工人,但不需要平行池。
您可以使用批处理
运行脚本或功能。更多细节,请参阅批处理
参考页面。
运行一个批处理作业并行池
你可以结合能力将工作和在并行运行一个循环池。这个例子结合了两个创建一个简单的批处理parfor
循环。
创建一个脚本,类型:
编辑mywave
在MATLAB编辑器中,创建一个
parfor
循环:parfor我= 1:1024 (i) =罪(我* 2 *π/ 1024);结束
保存文件并关闭编辑器。
在MATLAB运行脚本
批处理
命令。表明,该脚本应该使用并行循环池:工作=批(“mywave”,“池”3)
这个命令指定三个工人(除了一个运行批处理脚本)是评价循环迭代。因此,这个示例使用共有四个当地工人,包括运行批处理脚本的一名工人。总共有五个MATLAB会话,如下列图所示。
查看结果:
等待(工作)负载(工作,“一个”图(一)
结果看起来与以前一样,但是,有两个重要的执行的差异:
定义的工作
parfor
循环和积累的结果都被另一个MATLAB会话批处理
。循环迭代分布从一个MATLAB工人到另一组工人同时运行(
“池”
和parfor
),所以循环可能跑得更快比只有一名工人执行它。
当工作完成后,永久删除其数据和从工作区中删除其参考:
删除(工作)清晰工作
从当前文件夹运行脚本批处理作业的浏览器
从当前文件夹的浏览器,您可以运行一个MATLAB脚本作为批处理作业通过浏览文件的文件夹,右击文件,选择作为批处理作业运行脚本。批处理作业运行在集群被默认集群配置文件。下面的图显示了菜单选项来运行脚本文件script1.m
:
运行一个脚本,一批从浏览器只使用一个工人从集群。所以即使脚本包含一个parfor
循环或spmd
块,它没有打开一个额外的工人在集群上。这些代码块执行一个工人用于批处理作业。如果你的批处理脚本需要打开一个额外的工人,可以从命令行运行它,所述运行一个批处理作业并行池。
当你从浏览器中运行一个批处理作业,这也开启了监测工作。监测工作是一个工具,可以让你跟踪你的作业调度器的队列。关于这份工作的更多信息监控及其功能,明白了监控工作。