Azure / cyclecloud-slurm

Azure CycleCloud project to enable users to create, configure, and use Slurm HPC clusters.
MIT License
58 stars 43 forks source link

Support for Multiple VM Sizes per Partition #118

Closed jgregorcmh closed 1 year ago

jgregorcmh commented 1 year ago

The current cyclecloud_slurm does not support either multiple MachineType values per nodearray, nor multiple nodearrays assigned to the same Slurm partition. If multiple values for either are supplied, the python code will take only the first value in the list. Remarks in the partition class definition say that a one-to-one mapping of partition names to nodearrays is required.

Cyclecloud cluster templates themselves support multiple machine type values per nodearray and Slurm supports multiple machine types per partition. The current limitation of one machine type per partition is a function of the Cyclecloud implementation. Users of a cluster would benefit from being able to ask for a number of cores in a single partition and having the scheduler determine which size VM to create.

ryanhamel commented 1 year ago

The default for the dynamic nodearray now allows for multiple VM sizes. You may use as many VM sizes per dynamic partition as you please, see README.md for more information (https://github.com/Azure/cyclecloud-slurm/blob/master/README.md#using-dynamic-partitions-to-autoscale)

Fixed in 3.0.3