如果您有一个多核处理器,您可以通过使用并行处理来提高处理速度。您可以使用parallel Computing Toolbox™许可证建立多个工作人员的并行池。有关并行计算工具箱软件的说明,请参见开始使用并行计算工具箱(并行计算工具箱).
假设您有一个双核处理器,并且希望使用并行计算。在命令行输入以下代码。
parpool
MATLAB®使用多核处理器启动一个工作池。如果您以前设置了非默认的集群配置文件,您可以通过输入此代码强制多核(本地)计算。
parpool (“本地”)
请注意
根据您的偏好,MATLAB可以自动启动并行池。要启用此功能,请选择Parallel >平行首选项在环境集团在首页选项卡,然后选择自动创建并行池.
设置求解器选项以使用并行计算。
选择= optimoptions ('solvername”、“UseParallel”,真正的);
当您运行一个适用的解决方案选项
,适用求解器自动使用并行计算。
若要并行停止计算优化,请设置UseParallel
来假
.若要停止所有并行计算,请输入以下代码。
删除(gcp)
请注意
文档建议不要使用parfor
或parfeval
当调用仿真软件金宝app®;看到在parfor中使用sim功能(金宝app模型).因此,在使用求解器的内置并行功能并行优化Simulink模拟时,可能会遇到问题。金宝app
如果网络上有多个处理器,请使用并行计算工具箱函数MATLAB并行服务器™软件建立并行计算。
确保您的系统被正确地配置为并行计算。请与系统管理员联系,或参阅并行计算工具箱文档。
通过输入以下代码执行基本检查,其中教授
是集群配置文件。
parpool(教授)
工作人员必须能够访问你的目标函数文件,如果适用,你的非线性约束函数文件。完成其中一个步骤,以确保访问:
将文件分发给使用parpool
(并行计算工具箱)AttachedFiles
论点。在这个例子中,objfun.m
你的目标函数文件,和constrfun.m
是非线性约束函数文件。
parpool (“AttachedFiles”, {“objfun.m”,“constrfun.m”});
工作人员访问他们自己的文件副本。
给你的目标或约束函数文件一个网络文件路径。
pctRunOnAll(“目录network_file_path')
工作人员通过网络访问函数文件。
检查文件是否在每个worker的路径上。
pctRunOnAll (',文件名')
文件名没有找到。
设置求解器选项以指定使用并行计算。这个论点“solvername”
表示支持并行计算的非线性求解器。金宝app
选择= optimoptions (“solvername”,“UseParallel”,真正的);
在建立并行计算环境之后,无论何时调用适用的求解器,它们都会自动使用并行计算选项
.
若要并行停止计算优化,请设置UseParallel
来假
.若要停止所有并行计算,请输入以下代码。
删除(gcp)
请注意
文档建议不要使用parfor
或parfeval
当调用仿真软件;金宝app看到在parfor中使用sim功能(金宝app模型).因此,在使用求解器的内置并行功能并行优化Simulink模拟时,可能会遇到问题。金宝app
按照以下步骤来测试您的问题是否正确并行运行。
尝试不使用并行计算的问题,以确保它是串行运行的。在进行下一个测试之前,确保这个测试是成功的(给出正确的结果)。
集UseParallel
来真正的
,并通过输入删除(gcp)
.要确保MATLAB不创建并行池,请选择Parallel >平行首选项在环境集团在首页制表,然后清除自动创建并行池.你的问题是parfor
连续地,循环迭代的顺序与a为
循环。在进行下一个测试之前,确保这个测试是成功的(给出正确的结果)。
集UseParallel
来真正的
,并使用parpool
.除非您设置了多核处理器或网络,否则此测试不会提高处理速度。这种测试只是为了验证计算的正确性。
记住用an调用你的解算器选项
参数来测试或使用并行功能。