Main Content

本页采用了机器翻译。点击此处可查看最新英文版本。

parallel.Cluster

访问集群属性和行为

构造函数

parcluster

getCurrentCluster(在 MATLAB® 工作进程的工作区中)

容器层次结构

parallel.Job, parallel.Pool

描述

parallel.Cluster 对象提供对集群的访问,集群控制作业队列并将任务分发给工作进程执行。

类型

这两类集群分别是 MATLAB 作业调度器和通用作业调度器(CJS)。MATLAB 作业调度器在 MATLAB Parallel Server™ 中可用。CJS 集群涵盖所有其他类型,包括本地、通用和第三方调度器。

使用 MJSComputeCloud 对象与 MATLAB Parallel Server 交互形成 Amazon EC2® 集群。

下表描述了可用的集群对象类型。

集群类型描述
parallel.cluster.MJS

与本地 MATLAB 作业调度器集群进行交互

parallel.cluster.MJSComputeCloud

MATLAB Parallel Server 交互,用于云中的集群

parallel.cluster.Local

与客户端计算机上本地运行的 CJS 集群进行交互

parallel.cluster.HPCServer

与运行 Windows® Microsoft® HPC Server 的 CJS 集群交互

parallel.cluster.LSF

与运行 LSF® 的 CJS 集群交互

parallel.cluster.PBSPro

与运行 Altair PBS Pro® 或 OpenPBS 的 CJS 集群交互

parallel.cluster.Torque

与运行 TORQUE 的 CJS 集群交互

parallel.cluster.Slurm

与运行 Slurm 的 CJS 集群交互

parallel.cluster.Generic

使用通用接口与 CJS 集群交互

方法

所有集群类型都通用

batchRun MATLAB script or function on worker
createCommunicatingJobCreate communicating job on cluster
createJobCreate independent job on cluster
findJobFind job objects in cluster
isequalTrue if clusters have same property values
parpoolCreate parallel pool on cluster
saveAsProfileSave cluster properties to specified profile
saveProfile将修改后的集群属性保存到其当前配置文件中

MATLAB 作业调度器

changePasswordPrompt MATLAB Job Scheduler password change
demoteDemote job in cluster queue
logout退出 MATLAB 作业调度器集群
promotePromote job in MATLAB Job Scheduler cluster queue
resumeMATLAB 作业调度器中恢复处理队列

MJSComputeCloud

shutdown Shut down cloud cluster
startStart cloud cluster
wait (cluster)Wait for cloud cluster to change state

本地

getDebugLogRead output messages from job run in CJS cluster

HPC Server、PBS ProLSF、TORQUE、Slurm 和通用

getDebugLogRead output messages from job run in CJS cluster
getJobClusterData获取第三方集群上作业的特定用户数据
getJobFolderFolder on client where jobs are stored
getJobFolderOnClusterFolder on cluster where jobs are stored
getLogLocationLog location for job or task
setJobClusterDataSet specific user data for job on third-party cluster

属性

所有集群类型都通用

以下属性是所有集群对象类型所共有的。

属性描述
ClusterMatlabRoot

指定 MATLAB 的路径,供工作进程使用

Host

集群头节点的主机名

JobStorageLocation

集群存储作业和任务信息的位置

Jobs

此集群中包含的作业列表

LicenseNumber

使用此集群运行作业时使用的许可证编号

Modified

如果此集群中的任何属性已被修改则为 True

NumThreads

工作进程计算线程数

NumWorkers

该集群可用的工作进程数量

OperatingSystem

集群使用的节点的操作系统

PreferredPoolNumWorkers

并行池中的首选工作进程数量

Profile

用于构建此集群的配置文件

RequiresOnlineLicensing

true 如果集群使用在线许可

Type

该集群的类型

UserData

与客户端会话内的集群对象相关的信息

JobStorageLocation 属性指定为下列之一。

  • 如果使用远程模式下的通用调度器接口与第三方调度器交互,并且客户端和工作进程使用不同的操作系统,请指定一个结构。该结构必须具有字段 'windows''unix'。字段分别是集群存储作业和任务信息的文件夹对应的 Windows 和 UNIX® 路径。以下结构使用 Windows UNC 路径 ('\\organization\some\path') 和 UNIX 路径 ('/organization/some/path') 指定同一个文件夹:

    struct('windows', '\\organization\some\path', 'unix', '/organization/some/path')

  • 否则,使用字符向量或字符串来指定集群存储作业和任务信息的文件夹。

MATLAB 作业调度器

MJS 集群对象除了具有共同的属性外,还具有以下属性:

属性描述
AllHostAddresses

集群主机的 IP 地址

BusyWorkers

当前正在运行任务的工作进程

IdleWorkers

当前可运行任务的工作进程

HasSecureCommunication

如果集群使用安全通信则为 True

MaxNumWorkers

该集群可拥有的最大工作进程数量。

  • 当您使用没有自动调整大小功能的集群时,该值就是集群中工作进程的数量。

  • 当您使用具有自动调整大小功能的集群时,系统会根据需要自动添加工作进程,直至达到此最大值。有关自动调整大小的更多信息,请参阅 设置 MATLAB 作业调度器集群以实现自动调整大小 (MATLAB Parallel Server)

Name

该集群的名称

NumBusyWorkers

当前正在运行任务的工作进程数量

NumIdleWorkers

可运行任务的工作进程数量

PromptForPassword

如果系统在验证用户身份时提示输入密码,则为 True

SecurityLevel

应用于集群及其作业的安全程度。有关安全级别的描述,请参阅设置 MATLAB 作业调度器集群安全性 (MATLAB Parallel Server)

State

集群的当前状态

Username

用户访问集群

MJSComputeCloud

MJSComputeCloud 集群对象除了具有共同的属性外,还具有以下属性:

属性描述
BusyWorkers

当前正在运行任务的工作进程

Certificate

集群 SSL 证书

HasSecureCommunication

如果集群使用安全通信,则为 true

Identifier

唯一集群标识符

IdleWorkers

当前可运行任务的工作进程

MatlabVersion

在工作进程上运行的 MATLAB 版本

MaxNumWorkers

该集群可拥有的最大工作进程数量。

  • 当您使用没有自动调整大小功能的集群时,该值就是您启动集群时的工作进程数量。

  • 当您使用具有自动调整大小功能的集群时,系统会根据需要自动添加工作进程,直至达到此最大值。有关自动调整大小的更多信息,请参阅自动调整集群大小

Name

该集群的名称

NumBusyWorkers

当前正在运行任务的工作进程数量

NumIdleWorkers

可运行任务的工作进程数量

NumWorkersRequested

该集群请求的工作进程数量。集群会尽快添加或删除工作进程以达到这个数量。

SharedState

集群的共享状态,可以是以下选项之一:

  • 个人 – 只要您创建了该集群,就只有您可以使用它。

  • 可共享 - 任何人都可以使用该集群。

ShutdownAt

关机时间或事件

State

集群的当前状态

Username

用户访问集群

本地

除了所有集群共有的属性之外,本地集群对象没有可编辑的属性。

HPC Server

运行 Windows 的客户端支持 HPCServer 集群对象。

HPCServer 集群对象除了具有共同的属性外,还具有以下属性:

属性描述
ClusterVersion

集群上运行的 Microsoft Windows HPC Server 版本

HasSharedFilesystem

指定客户端和集群节点是否共享作业存储位置

JobDescriptionFile

创建作业时使用的 XML 作业描述文件的名称

JobTemplate

用于提交到 HPC Server 的作业的作业模板的名称

Name

该集群的名称

UseSOAJobSubmission

允许在 HPC Server 上提交面向服务架构 (SOA)

PBS Pro 和 TORQUE

PBSProTorque 集群对象除了具有共同属性外,还具有以下属性:

属性描述
AdditionalProperties

插件脚本的附加属性 (自 R2024a 起)

HasSharedFilesystem

指定客户端和集群节点是否共享作业存储位置

PluginScriptsLocation

包含调度器插件脚本的文件夹 (自 R2024a 起)

ProcsPerNode

每个节点的处理器数量,指定为有限正整数标量。

当您向集群提交作业时,MATLAB 请求的每个节点的核心数保证小于或等于 ProcsPerNode。将 ProcsPerNode 设置为您希望 MATLAB 从每个集群节点请求的最大处理器数量。

MATLAB 请求运行作业所需的每个节点的最小核心数。

  • 如果集群的 NumThreads 属性小于或等于 ProcsPerNode,MATLAB 将为每个工作进程请求 NumThreads 个处理器,然后最大化每个节点的工作进程数量。例如,如果 ProcsPerNode16NumThreads5,则 MATLAB 请求 15 核心,即小于 ProcsPerNode5 的最大倍数。

  • 如果集群的 NumThreads 大于 ProcsPerNode,则 MATLAB 会向每个节点请求 ProcsPerNode 处理器。

    NumThreads 大于 ProcsPerNode 时,您可能会遇到性能问题。作为最佳实践,请将 NumThreads 设置为小于或等于 ProcsPerNode。有关详细信息,请参阅编辑工作进程数量和集群设置

SubmitArguments

指定提交作业时使用的附加参量。您可以使用此属性来设置 AdditionalSubmitArgs 附加属性。

LSF 和 Slurm

LSFSlurm 集群对象除了具有共同属性外,还具有以下属性:

属性描述
AdditionalProperties

插件脚本的附加属性 (自 R2024a 起)

HasSharedFilesystem

指定客户端和集群节点是否共享作业存储位置

PluginScriptsLocation

包含调度器插件脚本的文件夹 (自 R2024a 起)

SubmitArguments

指定提交作业时使用的附加参量。您可以使用此属性来设置 AdditionalSubmitArgs 附加属性。

通用

运行 Windows、macOS 或 Linux® 的客户端支持 Generic 集群对象。

如果从 R2017a 或更高配置文件文件创建 Generic 集群对象,则除了公共属性之外,您还具有以下属性:

属性描述
AdditionalProperties

插件脚本的附加属性

HasSharedFilesystem

指定客户端和集群节点是否共享作业存储位置

PluginScriptsLocation

包含调度器插件脚本的文件夹

如果从 R2016b 或更早配置文件的配置文件创建 Generic 集群对象,则除了公共属性之外,您还具有以下属性:

属性描述
CancelJobFcn

取消作业时运行的函数

CancelTaskFcn

取消任务时运行的函数

CommunicatingSubmitFcn

提交通信作业时运行的函数

DeleteJobFcn

删除作业时运行的函数

DeleteTaskFcn

删除任务时运行的函数

GetJobStateFcn

查询作业状态时运行的函数

HasSharedFilesystem

指定客户端和集群节点是否共享作业存储位置

IndependentSubmitFcn

提交独立作业时运行的函数

帮助

要获得有关集群对象的更多帮助,包括特定集群类型和对象属性的帮助链接,请在命令行中键入:

help parallel.Cluster

版本历史记录

在 R2012a 中推出

全部展开