多个仿真工作流的比较
当运行一组多个模拟时,您可以在多个MATLAB上并行运行它们®工人在平行水池。要运行多个模拟,可以使用parsim
,parsim
与“RunInBackground”
选项打开,或者batchsim
.
该流程图显示了如何运行多个模拟parsim
,parsim
与RunInBackground
而且batchsim
是不同的。
的parsim
而且batchsim
命令使用并行计算工具箱™许可证并行运行模拟。parsim
如果无法创建并行池或并行计算工具箱许可证不可用,则以串行方式运行模拟。batchsim
没有并行计算工具箱许可证,命令不能运行。
parsim
工作流
使用parsim
命令使用并行计算工具箱运行多个模拟,将自动设置并行池并并行运行模拟。客户端总是绑定到MATLAB工作者。
基本parsim
工作流
创建一个数组
万博1manbetx仿真软件。SimulationInput
对象,在
,以指定对模型的更改。指定运行多个模拟所需的一次性设置。你可以使用
SetupFcn
而且TransferBaseWorkspaceVariables
在并行工作机上执行设置。运行
parsim(中)
并行执行这些多个模拟。如果不存在并行池,则parsim
创建它。parsim
使用默认设置。属性可以打开模拟管理器
“SimulationManager”
参数“上”
与parsim
,parsim(“SimulationManager”,“上”)
.模拟管理器使您能够监视正在运行的模拟,并允许您在模拟准备就绪时访问模拟的输出。仿真管理器为您提供有关在工作线程上运行的模拟的信息。有关更多信息,请参见仿真管理器.一旦所有的模拟完成,您将得到一个数组
万博1manbetx仿真软件。SimulationOutput
对象。
限制
关闭MATLAB会话将终止对工人的模拟,禁止检索部分结果。
parsim
与RunInBackground
工作流
创建一个数组
万博1manbetx仿真软件。SimulationInput
对象,在
,以指定对模型的更改。指定运行多个模拟所需的一次性设置。你可以使用
SetupFcn
而且TransferBaseWorkspaceVariables
在并行工作机上执行设置。运行
parsim
与RunInBackground
选项设置为“上”
:parsim(“RunInBackground”,“上”)
.设置“RunInBackground”
选项“上”
异步运行模拟。这使MATLAB命令提示符可用,使您能够处理其他任务。与
“RunInBackground”
选项设置为“上”
,parsim
返回一个万博1manbetxSimulink.Simulation.Future
对象。您可以轮询此对象以检查模拟的状态,在模拟完成时获取模拟的输出,或取消模拟。有关更多信息,请参见万博1manbetxSimulink.Simulation.Future
.
限制
关闭MATLAB会话将终止对工人的模拟,禁止检索部分结果。如果
未来
对象被清除后,您随后将无法访问模拟的结果。使用一个
fetchNext
方法循环开启未来
对象,以及模拟管理器导致它们竞争检索未来
对象。使用fetchNext
方法循环或仿真管理器来获取已完成的模拟的输出。
batchsim
工作流
批处理工作流通常意味着提交作业以在MATLAB工作者上运行模拟,然后访问这些模拟的结果。在批量运行模拟时,可以将模拟的执行卸载到计算集群上。要了解有关批处理的更多信息,请参见简单批处理(并行计算工具箱).
创建一个数组
万博1manbetx仿真软件。SimulationInput
对象,在
,以指定对模型的更改。指定运行多个模拟所需的一次性设置。你可以使用
SetupFcn
而且TransferBaseWorkspaceVariables
在并行工作机上执行设置。要在集群或桌面后台运行,请调用
batchsim
卸载模拟的执行。与batchsim
,您可以使用与parsim
而且批处理
命令。有关更多信息,请参见batchsim
.使用
batchsim
,您将模拟卸载到MATLAB工作人员。若要在多个工作者上运行批处理作业,请指定池大小,N
,这是一个整数,指定要为该作业放入并行池的工人数量:batchsim(in, 'Pool', N)
.至少应该有N + 1
集群上可用的worker。如果未指定池大小,则batchsim(中)
在默认集群概要文件指定的集群中的单个工作上运行模拟。请注意
batchsim
如果并行计算工具箱许可证不可用,则与池大小一起使用时会出现错误。batchsim
将模拟卸载到计算集群,使您能够在处理批处理作业时执行其他任务,或关闭客户端MATLAB并稍后访问批处理作业。在提交批处理作业时,
batchsim
返回一个作业对象,其中包含作业ID和其他可用于稍后访问批处理作业的信息。再次访问此作业以检查模拟的进度。
限制
因为客户端会话没有绑定到工人,所以除非作业完成,否则您无法访问输出。
batchsim
不能让您使用模拟管理器监视模拟。对于批处理作业,您可以使用批处理作业监控器,它可以告诉您作业是在队列中、正在进行中还是已完成。有关更多信息,请参见监控工作(并行计算工具箱)
另请参阅
功能
parsim
|batchsim
|批处理
(并行计算工具箱)|parcluster
(并行计算工具箱)|getSimulationJobs
类
万博1manbetx仿真软件。SimulationInput
|万博1manbetxSimulink.Simulation.Job
|万博1manbetxSimulink.Simulation.Future
工具
相关的话题
- 运行多个模拟
- 使用parsim对一个房子的热模型进行并行模拟
- 运行并行模拟
- 使用仿真管理器分析结果
- 批处理(并行计算工具箱)