batchsim
卸载要在计算集群上运行的模拟
描述
类中指定的输入在单个工作者上运行批处理作业,以模拟模型simJob
= batchsim (在
)SimulationInput
对象,在
.
在由群集对象标识的群集上运行批处理作业simJob
= batchsim (myCluster
,在
)myCluster
.如果未指定集群配置文件,则batchsim
使用在并行首选项中设置的默认集群配置文件。有关更多信息,请参见发现集群并使用集群概要文件(并行计算工具箱).
类中指定的输入运行模拟模型的批处理作业simJob
= batchsim(…名称,值
)SimulationInput
对象和指定为的选项名称,值
对。
batchsim
卸载模拟到计算集群,使您能够在处理批处理作业时执行其他任务,或关闭客户端MATLAB®并稍后访问批处理作业。使用“池”
参数以并行运行模拟。
的batchsim
命令使用并行计算工具箱™和MATLAB并行服务器™在计算集群上运行模拟的许可证。batchsim
如果无法创建并行池,则以串行方式运行模拟。如果“并行计算工具箱”许可证不可用,batchsim
错误了。
例子
运行并行模拟batchsim
这个例子展示了如何在批处理中运行并行模拟。batchsim
卸载模拟到计算集群,使您能够在处理批作业时执行其他任务,或关闭客户端MATLAB并稍后访问批作业。
此示例使用ex_sldemo_househeat
建立模型并进行批量模拟,观察模型在不同温度设定点下的行为。
打开模型。
openExample ('仿真软件/ OpenTheModelExample ');open_system (“ex_sldemo_househeat”);load_system (“ex_sldemo_househeat”)
为不同的温度定义一组值。在这里,setPointValues
是一个标准的温度范围。向量的长度帮助创建一个数组仿真软件。SimulationInput
对象。
setPointValues = 65:2:85;spv_Length = length(setPointValues);
使用setPointValues
,初始化数组仿真软件。SimulationInput
对象。
in(1:spv_Length) = Simulink。SimulationInput (“ex_sldemo_househeat”);为1:spv_Length in(i) = in(i).setBlockParameter(“ex_sldemo_househeat /设置点”,...“价值”num2str (setPointValues(我)));结束
指定要使用的工作人员数量的池大小。除了用于并行运行模拟的工作人员数量外,还需要一个主管工作人员。在本例中,让我们假设有三个工作者可以为并行模拟运行一个批处理作业。作业对象返回有用的元数据,如所示。你可以利用这份工作ID
以便以后从任何机器访问作业对象。NumWorkers
告诉你有多少工人在运行模拟。NumWorkers
是否始终指定工人的数量“池”
论点和一个额外的负责人。“池”
设置为3.
,您可以更改的值“池”
根据工人的可用性。
simJob = batchsim(in“池”3)
ID: 1类型:pool NumWorkers: 4用户名:#####状态:运行SubmitDateTime: ##-###-#### ##:##:## StartDateTime:运行时长:0天0h 0m 0
方法访问批处理作业的结果fetchOutputs
方法。fetchOutputs
方法从工作者检索结果,并返回一个数组仿真软件。SimulationOuput
对象。
out = fetchOutputs(simJob)
1 x11仿真软件。模拟Output array
输入参数
在
- - - - - -仿真软件。SimulationInput
对象,用于模拟模型
对象,数组
指定为仿真软件。SimulationInput
对象或的数组仿真软件。SimulationInput
对象,该对象用于指定对模拟模型的更改。
例子:in = Simulink.SimulationInput('vdp')
myCluster
- - - - - -平行的。集群
对象
对象
集群对象,该对象用于指定运行批处理作业的集群。
名称-值参数
例子:“池”
,5
指定逗号分隔的可选对名称,值
参数。的名字
参数名称和价值
对应的值。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家
.
AdditionalPaths
- - - - - -要附加到并行池的文件
特征向量|单元阵列
指定为字符向量、单元格数组或字符向量数组,以定义在执行仿真之前要添加到工作者的MATLAB搜索路径中的路径。工人上的默认搜索路径可能与客户端上的不一样;路径差异可能是由于不同的当前工作文件夹(pwd)、平台或网络文件系统访问所致。“AdditionalPaths
属性可以确保工作人员在正确的位置寻找必要的代码文件、数据文件、模型文件等。
AttachedFiles
- - - - - -要附加到并行池的文件
单元阵列
指定为附加到并行池的附加文件的单元格数组。
AutoAddClientPath
- - - - - -客户端路径上的用户添加条目是否添加到每个工作路径
真正的(默认)|假
指定为true或false以控制是否将客户端路径上用户添加的条目添加到每个工作路径。
AutoAttachFiles
- - - - - -是否应该将代码文件自动附加到作业
真正的(默认)|假
指定为true或false以控制代码文件是否自动附加到作业。
CaptureDiary
- - - - - -是否日记
收集
真正的(默认)|假
的集合指定为true或false日记
.
CleanupFcn
- - - - - -函数句柄在运行模拟后,每个工人运行一次
函数处理
指定一个函数处理
来“CleanupFcn”
在模拟完成后,每个工人运行一次。
EnvironmentVariables
- - - - - -从客户端会话复制到工作者的环境变量的名称
特征向量|单元阵列
指定从客户机会话复制到工作者的环境变量的名称。此处指定的名称被附加到'EnvironmentVariables
的属性,以形成环境变量的完整列表。任何列出的未设置的变量都不会复制到工作者。这些环境变量将在批处理作业期间在工作者上设置。
ManageDependencies
- - - - - -管理模型依赖关系
“上”(默认)|“关闭”
当ManageDependencies
设置为“上”
,如果有必要,模型依赖会自动发送给并行工作者。如果ManageDependencies
设置为“关闭”
,显式地将模型依赖项附加到并行池。
池
- - - - - -并行池的工作人员数量的大小
整数
一个整数,指定要为作业在并行池中放入的工人数量除了到运行批处理作业本身的工作者。模拟使用这个池执行。因为除了运行批处理的工作人员外,池还需要N个工作人员,所以集群上必须至少有N+1个工作人员可用。
配置文件
- - - - - -集群配置文件名称
配置文件名称
用于标识集群的集群配置文件的名称。如果省略此选项,则使用默认配置文件识别集群,并将其应用于作业和任务属性。
SetupFcn
- - - - - -函数句柄为每个工作者运行一次
函数处理
指定一个函数处理
来“SetupFcn”
在开始模拟之前,每个工人运行一次。
请注意
若要避免编译错误,请设置'LoadExternalInput
“到”从
’或确保指定的外部输入在使用时可用buildRapidAcceleratorTarget
ShowProgress
- - - - - -显示模拟的进展日记
“上”|“关闭”
设置为“上”
,将命令窗口中的模拟进度复制到日记
的Simulink.Simulation.Job
对象。当设置为时,进度将被隐藏“关闭”
.
StopOnError
- - - - - -停止错误模拟
“关闭”(默认)|“上”
设置“StopOnError”
来“上”
如果遇到错误,则停止模拟的执行。
TransferBaseWorkspaceVariables
- - - - - -将变量传递给并行工作者
“关闭”(默认)|“上”
当TransferBaseWorkspaceVariables
设置为真正的
,模型中使用的变量和基本工作区中定义的变量被转移到并行工作者。
UseFastRestart
- - - - - -使用快速重启
“关闭”(默认)|“上”
当UseFastRestart
设置为真正的
,在使用快速重启的工人上运行模拟。
请注意
当使用batchsim
,使用UseFastRestart
选项,而不是FastRestart
选择。看到快速重启开始更多信息。
输出参数
simJob
- - - - - -Simulink.Simulation.Job
工作对象
对象
包含已提交批作业元数据的对象。轮询作业对象,使用它的ID检查模拟状态或在作业完成时访问输出。
扩展功能
自动平行支撑
通过使用并行计算工具箱™自动并行运行计算来加速代码。
使用batchsim
安装了并行计算工具箱后,MATLAB会自动打开一个worker,并在本地机器的另一个会话中后台运行作业。指定池大小将对指定的工作人员数量进行模拟。使用并行首选项控制并行行为,包括扩展到集群。
详情请参见运行多个模拟.
版本历史
在R2018b中介绍
另请参阅
功能
parsim
|batchsim
|批处理
(并行计算工具箱)|parcluster
(并行计算工具箱)|取消
|日记
|fetchOutputs
|listAutoAttachedFiles
|等待
|getSimulationJobs
类
主题
- 多个仿真工作流的比较
- 运行多个模拟
- 批处理(并行计算工具箱)
- 监控工作(并行计算工具箱)
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。