主要内容

使用并行计算优化工具箱

使用多核处理器进行并行计算

如果您有多核处理器,可以使用并行处理提高处理速度。您可以使用并行计算工具箱™许可证建立一个平行池。有关并行计算工具箱软件的描述,请参阅开始使用并行计算工具箱(并行计算工具箱)

假设您有一个双核处理器,并且希望使用并行计算。在命令行输入以下代码。

parpool.

马铃薯®使用多核处理器启动一个工作池。如果您以前设置了非默认的集群配置文件,您可以通过输入此代码强制多核(本地)计算。

Parpool('当地的'

笔记

根据您的偏好,Matlab可以自动启动并行池。要启用此功能,请选择并行>并行偏好环境小组在选项卡,然后选择自动创建并行池

设置求解器选项以使用并行计算。

选项= Optimoptions('solvername','使用指甲',真实);

当您运行一个适用的解决方案选项,适用的求解器自动使用并行计算。

停止并行计算优化,设置使用指α.错误的.若要停止所有并行计算,请输入以下代码。

删除(GCP)

笔记

文档建议不要使用议案Parfeval.调用simulink时万博1manbetx®;看到在Parcol中使用SIM功能(万博1manbetxSimulink).因此,您可能会在使用Solver内置并行功能并行优化Simulink仿真时遇到问题。万博1manbetx

使用与多处理器网络的并行计算

如果网络上有多个处理器,请使用并行计算工具箱功能和MATLAB并行服务器™软件建立并行计算。

确保您的系统配置正确以进行并行计算。请咨询系统管理员,或参阅并行计算工具箱文档。

  1. 通过输入此代码执行基本检查,其中教授是集群配置文件。

    Parpool(教授)
  2. 工人必须能够访问您的客观函数文件,如果适用,则可以访问您的非线性约束函数文件。完成其中一个步骤以确保访问:

    • 将文件分发给使用parpool.(并行计算工具箱)AttachedFiles争论。在这个例子中,objfun.m.m.你的目标函数文件,和混乱是您的非线性约束函数文件。

      Parpool('附加的文件', {'objfun.m'“constrfun.m”});

      工人访问自己的文件副本。

    • 给你的目标或约束函数文件一个网络文件路径。

      pctrunonall('addpathnetwork_file_path')

      工作人员通过网络访问函数文件。

  3. 检查文件是否位于每个工人的路径上。

    pctrunonall('哪一个文档名称')
    如果任何worker没有该文件的路径,它就会报告
    文档名称未找到。

设置求解器选项以指定使用并行计算。这个论点'solvername'表示支持并行评估的非线性求解器。万博1manbetx

选择= optimoptions ('solvername''使用指平行',真的);

建立并行计算环境后,可在您称之为时,适用的求解器自动使用并行计算选项

停止并行计算优化,设置使用指α.错误的.若要停止所有并行计算,请输入以下代码。

删除(GCP)

笔记

文档建议不要使用议案Parfeval.当调用仿真软件;万博1manbetx看到在Parcol中使用SIM功能(万博1manbetxSimulink).因此,您可能会在使用Solver内置并行功能并行优化Simulink仿真时遇到问题。万博1manbetx

测试并行计算

按照以下步骤来测试您的问题是否正确并行运行。

  1. 尝试在没有并行计算的情况下解决问题,以确保它串行运行。确保此测试成功(提供正确的结果),然后再进行下一个测试。

  2. 使用指α.真正的,并确保通过输入不存在并行池删除(GCP).要确保MATLAB不会创建并行池,请选择并行>并行偏好环境小组在标签,然后清除自动创建并行池.你的问题运行议案串行,循环迭代以相反的顺序为了环形。确保此测试成功(提供正确的结果),然后再进行下一个测试。

  3. 使用指α.真正的,并使用并行池使用parpool..除非您有多核处理器或网络设置,否则此测试不会提高处理速度。此测试只是验证计算的正确性。

请记得使用拨打您的求解器选项测试或使用并行功能的参数。

相关的话题