使用 Slurm 進行多個實例類型分配 - AWS ParallelCluster

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 Slurm 進行多個實例類型分配

從 3.3.0 AWS ParallelCluster 版開始,您可以將叢集設定為從計算資源的已定義執行個體類型集進行配置。配置可以根據 Amazon EC2 叢集低成本或最佳容量策略進行配置。

這組已定義的執行個體類型必須全部具有相同數量的 vCPUs,或者如果停用多執行緒,則必須具有相同數量的核心。此外,這組執行個體類型必須具有相同製造商的加速器數目相同。如果將 Efa/設定Enabledtrue,則執行個體必須支援 EFA。如需詳細資訊和需求,請參閱 SchedulingSlurmQueues//AllocationStrategyComputeResources/Instances

您可以capacity-optimized根據您的CapacityType組態設定AllocationStrategylowest-price或。

在中 Instances,您可以設定一組執行個體類型。

注意

從 AWS ParallelCluster 版本 3.7.0 開始,如果您在執行個體中設定多個執行個體類型,則EnableMemoryBasedScheduling可以啟用此功能。

適用於 AWS ParallelCluster 版本 3.2.0 至 3.6 版本。 xEnableMemoryBasedScheduling如果您在執行個體中設定多個執行個體類型,則無法啟用。

下列範例說明如何查詢 vCPUs、EFA 支援和架構的執行個體類型。

InstanceTypes使用 96 個 vCPUs 和 x86_64 架構進行查詢。

$ aws ec2 describe-instance-types --region region-id \ --filters "Name=vcpu-info.default-vcpus,Values=96" "Name=processor-info.supported-architecture,Values=x86_64" \ --query "sort_by(InstanceTypes[*].{InstanceType:InstanceType,MemoryMiB:MemoryInfo.SizeInMiB,CurrentGeneration:CurrentGeneration,VCpus:VCpuInfo.DefaultVCpus,Cores:VCpuInfo.DefaultCores,Architecture:ProcessorInfo.SupportedArchitectures[0],MaxNetworkCards:NetworkInfo.MaximumNetworkCards,EfaSupported:NetworkInfo.EfaSupported,GpuCount:GpuInfo.Gpus[0].Count,GpuManufacturer:GpuInfo.Gpus[0].Manufacturer}, &InstanceType)" \ --output table

InstanceTypes使用 64 個核心、EFA 支援和 arm64 架構進行查詢。

$ aws ec2 describe-instance-types --region region-id \ --filters "Name=vcpu-info.default-cores,Values=64" "Name=processor-info.supported-architecture,Values=arm64" "Name=network-info.efa-supported,Values=true" --query "sort_by(InstanceTypes[*].{InstanceType:InstanceType,MemoryMiB:MemoryInfo.SizeInMiB,CurrentGeneration:CurrentGeneration,VCpus:VCpuInfo.DefaultVCpus,Cores:VCpuInfo.DefaultCores,Architecture:ProcessorInfo.SupportedArchitectures[0],MaxNetworkCards:NetworkInfo.MaximumNetworkCards,EfaSupported:NetworkInfo.EfaSupported,GpuCount:GpuInfo.Gpus[0].Count,GpuManufacturer:GpuInfo.Gpus[0].Manufacturer}, &InstanceType)" \ --output table

下一個範例叢集配置程式碼片段顯示如何使用這些InstanceType和AllocationStrategy屬性。

... Scheduling: Scheduler: slurm SlurmQueues: - Name: queue-1 CapacityType: ONDEMAND AllocationStrategy: lowest-price ... ComputeResources: - Name: computeresource1 Instances: - InstanceType: r6g.2xlarge - InstanceType: m6g.2xlarge - InstanceType: c6g.2xlarge MinCount: 0 MaxCount: 500 - Name: computeresource2 Instances: - InstanceType: m6g.12xlarge - InstanceType: x2gd.12xlarge MinCount: 0 MaxCount: 500 ...