Allocation de plusieurs types d'instances avec Slurm - AWS ParallelCluster

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Allocation de plusieurs types d'instances avec Slurm

À partir de AWS ParallelCluster la version 3.3.0, vous pouvez configurer votre cluster pour qu'il alloue à partir de l'ensemble de types d'instances définis d'une ressource de calcul. L'allocation peut être basée sur des stratégies de faible coût ou de capacité optimale de la flotte Amazon EC2.

Cet ensemble de types d'instances définis doit tous avoir le même nombre de vCPU ou, si le multithreading est désactivé, le même nombre de cœurs. De plus, cet ensemble de types d'instances doit comporter le même nombre d'accélérateurs du même fabricant. Si Efa/Enabledest défini surtrue, les instances doivent être compatibles avec l'EFA. Pour plus d'informations et pour connaître les exigences, consultez SchedulingSlurmQueues//AllocationStrategyet ComputeResources/Instances.

Vous pouvez AllocationStrategychoisir lowest-price ou capacity-optimized en fonction de votre CapacityTypeconfiguration.

Dans Instances, vous pouvez configurer un ensemble de types d'instances.

Note

À partir de AWS ParallelCluster la version 3.7.0, elle EnableMemoryBasedScheduling peut être activée si vous configurez plusieurs types d'instances dans Instances.

Pour AWS ParallelCluster les versions 3.2.0 à 3.6. x, ne EnableMemoryBasedScheduling peut pas être activé si vous configurez plusieurs types d'instances dans Instances.

Les exemples suivants montrent comment interroger les types d'instances pour les vCPU, le support EFA et l'architecture.

Requête InstanceTypes avec 96 vCPU et architecture 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

Requête InstanceTypes avec 64 cœurs, support EFA et architecture 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

L'exemple d'extrait de configuration de cluster suivant montre comment vous pouvez les utiliser InstanceType ainsi AllocationStrategy que leurs propriétés.

... 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 ...