主要内容

使用通用调度器接口进行配置

通用调度器接口提供了配置MATLAB交互的灵活性®客户端、MATLAB工作者和第三方调度器。当您需要完全自定义MATLAB与调度器设置的接口时,请使用通用调度器接口。

您可以使用内置集群类型或通用的.作为最佳实践,尽可能使用内置集群类型。

你必须使用通用的集群配置文件:

  • 您连接到的集群没有内置集群类型

  • MATLAB客户端和集群节点没有共享文件系统

  • MATLAB客户端机器无法直接向第三方调度器提交作业,或者

  • 您需要完全自定义并行作业提交到集群的方式

若要使用内置集群类型配置集群,请参见配置Slurm, PBS Pro, OpenPBS, LSF, TORQUE配置Hadoop集群,或配置为HPC包

与第三方调度器接口

通用调度器接口提供了一种从并行计算工具箱™客户端会话获取任务到调度器和集群节点的方法。要实现这一点,必须为MATLAB客户端提供一组插件脚本。这些脚本包含特定于集群基础设施的指令,例如如何与作业调度器通信,以及如何将作业和任务数据传输到集群节点。

支持脚本

为了帮助您与调度器进行交互,MathWorks®提供以下第三方调度器的外接程序或插件,您可以从外接程序管理器下载并安装它们。

  • 并行计算工具箱插件MATLAB并行服务器与Slurm

  • 并行计算工具箱插件MATLAB并行服务器IBM平台LSF

  • 并行计算工具箱插件MATLAB并行服务器使用网格引擎

  • 并行计算工具箱插件MATLAB并行服务器与PBS

  • 并行计算工具箱插件MATLAB并行服务器与HTCondor

首页选项卡,在环境区域,点击附加组件.在外接程序资源管理器中,搜索并安装该外接程序。安装程序包括一个向导,指导您为集群配置创建集群概要文件。

或者,你也可以从以下位置下载插件:

要安装一个插件,双击它或拖放它在MATLAB中。

每个安装程序为三种可能的提交模式创建脚本:

  • 共享——当客户机可以直接提交到调度器,并且客户机和集群计算机具有共享的文件系统时。

  • 远程——当客户端和集群计算机拥有共享的文件系统,但客户端计算机不能直接提交到调度器时,例如没有安装调度器的客户端实用程序时。方法向调度器提交命令ssh协议。

  • 非共享—当客户端和集群机器没有共享文件系统时。此模式使用ssh协议,使用远程主机向调度器提交命令,并且它使用sftp将作业和任务文件复制到集群文件系统的协议。

每个提交模式在安装文件夹中都有自己的子文件夹。这些子文件夹包含自述文件,该文件提供关于如何使用脚本的具体说明。在使用脚本之前,请确定哪种提交模式描述您的网络设置。

如果您想自定义插件脚本的行为,您可以设置额外的属性,例如AdditionalSubmitArgs.有关更多信息,请参见自定义示例插件脚本的行为

如果某个支持包不支持您的调度器或集群配置,建议您修改其中一个包的脚本。有关如何为通用调度器编写一组插件脚本的详细信息,请参见通用调度器的插件脚本(并行计算工具箱)

创建一个通用集群概要文件

LSF的示例设置

此示例展示如何设置集群概要文件以使用通用调度器接口。它展示了在客户机和集群机器之间没有共享文件系统的网络中LSF调度器的设置。下图说明了集群的设置:

在这种类型的配置中,作业数据从运行Windows操作系统的客户端主机复制到运行UNIX®操作系统的集群上的主机(集群登录节点)。来自集群登录节点的LSFbsub命令将作业提交给调度器。当作业完成时,它的输出被复制回客户端主机。

需求

安装必须满足以下条件:

  • 客户端节点和集群登录节点必须支持ssh而且sftp

  • 集群登录节点必须能够调用bsub命令将作业提交给LSF调度程序。你可以在自述非共享安装文件夹中的子文件夹。

运行LSF安装程序

  1. 下载LSF的安装程序在这里

  2. 通过在MATLAB客户端中打开文件来运行安装程序。

安装程序将插件脚本下载到非共享安装文件夹中的子文件夹。安装程序向导指导您完成创建和验证集群概要文件的步骤。

验证集群概要文件和安装

您可以指定在验证概要文件时要使用的工人数量。中没有指定工人的数量验证属性指定的值,则验证过程将尝试使用与之相同数量的工作者NumWorkers的属性属性选项卡。您可以指定较小数量的工作线程来验证您的配置,而不会占用整个集群。

  1. 从MATLAB桌面启动集群配置文件管理器。在首页选项卡,在环境区域,选择平行>创建和管理集群

  2. 在清单中选择集群概要文件。

  3. 单击验证选项卡。

  4. 使用复选框选择所有测试或验证阶段的子集,并指定验证概要文件时要使用的工作人员数量。

  5. 点击验证

验证Results选项卡显示输出。下图显示了通过所有验证测试的概要文件的结果。

请注意

如果验证在任何阶段失败,请与MathWorks安装支持团队

如果您的验证通过了,您就有了一个可以在其他并行应用程序中使用的有效概要文件。您可以对您的概要文件进行任何适合您的应用程序的修改,例如NumWorkersRangeAttachedFiles,或AdditionalPaths

若要为其他用户保存概要文件,请选择该概要文件,然后单击出口.然后将您的配置文件保存到一个方便位置的文件中。当运行集群概要管理器时,其他用户可以通过单击导入您的概要进口

若要了解如何分发通用集群概要文件和插件脚本以供他人使用,请参见分发通用集群概要文件和插件脚本

手动配置集群配置文件

如果要修改现有的通用集群概要文件,可以手动配置该概要文件。如果您是第一次创建概要文件,并且正在使用提供的支持脚本之一,请使用安装程序向导:运行LSF安装程序.以下步骤手动重现安装程序执行的配置。您可以根据您的设置修改这些选项中的任何一个。

  1. 在客户端主机上启动MATLAB会话。

  2. 从MATLAB桌面启动集群配置文件管理器。在首页选项卡,在环境区域,选择平行>创建和管理集群

  3. 通过选择,在Cluster profile Manager中创建一个新的概要文件添加>自定义>通用的

  4. 在列表中选择新配置文件后,选择重命名并将配置文件名称更改为InstallTest.新闻输入

  5. 属性选项卡上,选择编辑并为以下字段提供设置:

    1. 设置描述字段用于测试安装

    2. 设置JobStorageLocation例如,要将作业和任务数据存储在客户端机器上的位置(而不是集群位置),C: \ Temp \ joblocation

      你不能分享JobStorageLocation在运行不同版本的并行计算产品之间。2022世界杯八强谁会赢?集群上的每个版本都必须有自己的版本JobStorageLocation

    3. NumWorkers到要测试安装的工作人员的数量。

    4. NumThreads到每个worker上使用的线程数。

    5. ClusterMatlabRoot到MATLAB的安装位置,以便在工作机器上运行。

    6. 如果集群使用在线授权,请设置RequiresOnlineLicensing为true。

    7. 如果你设置RequiresOnlineLicensing真正的,进入你的LicenseNumber

    8. 操作到您的集群工作机器的操作系统。

    9. HasSharedFilesystem.此设置表示客户端节点和工作节点不能共享相同的数据位置。

    10. 设置PluginScriptsLocation到插件脚本的位置。在本例中,位置为非共享LSF安装文件夹中的子文件夹。作为使用示例脚本的一部分非共享提交模式,按步骤设置属性k而且l

    11. AdditionalProperties表中,选择添加.用name指定一个新属性ClusterHost、价值集群主机名称,和类型字符串

    12. AdditionalProperties表中,选择添加.用name指定一个新属性RemoteJobStorageLocation、价值/ /分享/ joblocation网络,和类型字符串

  6. 点击完成以保存集群概要文件更改。对话框如下所示:

要检查概要文件是否工作,请执行以下步骤中的验证验证集群概要文件和安装

特殊的配置

根据您的集群架构,在连接到通用调度器之前,您可能需要执行其他任务。

自定义MPI构建

您可以使用不同于并行计算工具箱提供的MPI构建。有关与通用调度器接口一起使用此选项的详细信息,请参见在UNIX系统上使用不同的MPI构建

使用网格引擎系列运行通信作业

Grid Engine家族的示例脚本依赖于matlab并行环境。并行环境(PE)是为集群中的并行计算而设计的编程环境。运行与之通信的作业MATLAB并行服务器和一个网格引擎家族集群,您必须建立一个matlab并行环境。

创建并行环境。以下步骤创建并行环境,然后使其可在所有队列上运行。作为最佳实践,请在集群的头节点上执行这些步骤。有些步骤需要管理员访问。

  1. 下载并运行Grid Engine的安装程序网格引擎系列。

  2. 导航到安装文件夹中提交模式的相关插件脚本的位置。

  3. 修改matlabpe.template控件的正确位置和所需的插槽数startmatlabpe.sh而且stopmatlabpe.sh文件。这些文件可以存在于所有主机都可以访问的共享位置,也可以将它们复制到每台主机上的相同位置。还可以更改其他值或向其添加附加值matlabpe.template以适合您的集群。有关更多信息,请参阅sge_pe调度器提供的文档。

  4. 添加matlab并行环境,使用shell命令,例如:

    qconf -Ap matlabpe.template

  5. 使matlab并行环境可在所有队列上运行:

    Qconf -mq all.q
    这个命令会调出一个文本编辑器供您进行更改。搜索直线pe_list,并添加matlab

  6. 确保你可以向PE提交一个琐碎的工作:

    $ echo "hostname" | qsub -pe

  7. 使用qstat要检查作业是否正确运行,并检查输出文件是否包含运行作业的主机的名称。输出文件的默认文件名为~ / STDIN.o # # #,在那里# # #是网格引擎作业号。

请注意

如果您将并行环境的名称更改为matlab,也改变了提交函数。

Windows集群上配置防火墙

如果在集群节点上使用Windows防火墙,可以将MATLAB添加为允许的程序。

在下面的说明中,matlabroot为MATLAB的安装位置。

  1. 以具有管理权限的用户登录。

  2. 在DOS命令窗口中执行以下脚本:

    matlabroot \工具箱\ \ bin \ addMatlabToWindowsFirewall.bat平行

如果使用其他防火墙,则必须单独配置这些防火墙,以将MATLAB添加为允许的程序。

相关的话题

Baidu
map