自动调整集群大小
您的集群可根据提交至集群的工作量自动调整规模。
要启用自动调整大小功能,请在创建集群页面上选择选项 Allow cluster to auto-resize。请通过位于 Workers in Cluster 旁边的 Upper Limit 菜单,指定集群中所需的最大工作单元数量。为确保所有机器均以相同数量的作业者启动,Upper Limit 菜单选项的数值均为 Workers per Machine 值的倍数。
根据您的 Upper Limit 选择和 Workers per Machine 值,Machines in Cluster 字段将显示集群的最大机器数量(包含主节点机器)。您的集群不会自动扩展至超过 Machines in Cluster 字段显示的机器数量或 Workers in Cluster 指定的工作节点数量。
注意
将 Workers in Cluster 字段设置为所需的最大集群规模,确保您已准备好为相应数量的机器支付费用。
您可以在 Cloud Center 的集群摘要页面查看最大工作单元数和当前请求的工作单元数。您还可以使用 MaxNumWorkers 和 NumWorkersRequested 属性,在 MATLAB® 中查看集群对象中的这些属性。有关详细信息,请参阅parallel.Cluster (Parallel Computing Toolbox)。
提示
为避免集群在所有工作单元处于空闲状态且队列中无作业时关闭,请将集群的终止策略设置为 After a fixed time period 或 Never。您的集群将仅保留专用主节点机器在线,直至提交更多作业或集群超时。
集群的扩大与缩减
您的集群从主节点机器开始,且没有工作单元机器。当您向集群提交作业时,集群将通过添加机器来扩展规模,以容纳队列中的下一个作业,其扩展规模上限为创建集群时设定的最大节点数。集群持续扩展,直至队列中不再有作业,或因工作单元数量上限限制而无法继续扩展以容纳下一个队列作业。工作单元以 Workers per Machine 为增量进行添加。
当工作单元可用时,可将其分配到队列中的下一个作业。当有足够的可用工作单元可运行该作业时,将立即安排队列中的作业。
不再使用的机器将从集群中移除。如果一台机器上的任何一个工作单元处于繁忙状态,该机器就不会被移除,直到该机器上的所有工作单元都处于空闲状态。Cloud Center 每五分钟检查一次空闲工作单元,并移除闲置至少五分钟的机器。当某台机器上的所有操作员都处于闲置状态时,移除该机器最多可能需要 15 分钟。当没有在运行中的作业时,您的集群可以缩减至零个工作单元。在这种情况下,集群中仅剩主节点。
在机器间分配作业
新机器上的工作单元或完成作业的工作单元未必能同时用于该集群。集群会在满足作业的最低要求后,立即将作业调度至空闲的作业节点。因此,随着集群中正在运行的作业完成以及队列中的作业开始执行,作业可以分布在多台机器上。在这种情况下,您会发现即使集群中活跃工作单元的数量少于当前使用的机器数量,集群也不会缩减,因为每台机器上都有活跃的工作单元。
例如,以下示例展示了集群在多个分配方式中的一种,用于将这些作业分发给各个工作单元。实际分配取决于新机器上工作单元的可用顺序以及作业完成后的处理顺序。假设您创建了一个最多包含 16 个工作单元的集群,每台机器部署四个工作单元。集群刚开始时不包含任何工作单元。您提交了四项作业:一项由六个工作单元完成的作业,两项由四个工作单元完成的作业,以及一项由五个工作单元完成的作业。作业按提交顺序完成。
首先,集群扩展至两台机器上的六个工作单元,以运行首个包含六个工作单元的作业。要运行第二个作业,集群需要额外增加两个工作单元。需要第三台机器来提供额外的工作单元。该工作被分配给现有机器上的两个闲置工作单元和新机器上的两个工作单元。同样地,运行第三项作业需要两个额外的工作单元,因此集群请求第四台机器。目前,四台机器上的 16 个工作单元中有 14 个处于使用状态。没有足够的工作单元来执行最后一项需要五个工作单元的作业。该作业将在前三项作业运行期间保持在队列中。

当第一个作业完成时,执行该作业的六个工作单元将处于闲置状态。它们未必会同时闲置。一旦有三个额外的工作单元可用,集群就会为最后一项需要五个工作单元的作业分配工作单元。

当第二项作业完成时,所有四台机器上仍有活跃的工作单元。尽管有七个闲置的工作单元,集群仍无法缩减。

当第三项工作完成时,同一台机器上的所有工作单元都会处于闲置状态。当机器闲置超过五分钟时,即可将其移除。集群缩减至三台机器。

当第四项也是最后一项作业完成时,三台剩余机器上的所有工作单元将处于闲置状态。如果没有提交新的作业,集群将减少为零个工作单元。集群中仅剩主节点机器。
AWS 资源限制
您在 Cloud Center 中可启动的实例最大数量取决于您的 AWS 按需实例限制。按需实例限制决定了您可使用的虚拟中央处理器 (vCPU) 的最大数量。在大多数情况下,一个物理核对应两个虚拟 CPU。例如,m5.8xlarge 实例拥有 16 个物理 CPU 核心,这对应于 32 个虚拟 CPU。要确定所需的 vCPU 数量,请使用 vCPU 限制计算器。您可在 AWS EC2 控制台中通过选择限制>计算 vCPU 限制找到该工具。有关按需实例限制的信息,请参阅按需实例。
对于配备 GPU 的机器,为获得最佳性能,每台机器的每个 GPU 仅使用 1 个工作单元。
有关 AWS 服务配额如何影响您可启动的实例最大数量的信息,请参阅 Amazon EC2 服务配额。