We’re planning to add a few new compute nodes to a small Slurm cluster, and I’m trying to work out a sensible CPU-to-memory balance before choosing the hardware. My current thought is to look at historical job data first, especially allocated CPUs, requested memory, MaxRSS, runtime, and how often jobs are waiting because of CPU versus memory availability. That seems more useful than simply buying the highest core-count CPUs available. For the new nodes, I’m mainly trying to decide: Whether fewer higher-clocked cores or more lower-clocked cores would give us better overall throughput How much RAM per physical core makes sense based on actual job usage Whether it is better to standardize all nodes or have a separate high-memory partition How much physical RAM should be left outside Slurm's RealMemory value for the OS and system processes Whether NUMA layout and memory bandwidth should influence the CPU choice as much as core count I’ve also been comparing different rack-server configurations here to get an idea of available Xeon, ECC memory, and storage combinations: https://ormsystems.com/servers-price.html For those managing production Slurm clusters, do you normally size new nodes from something like the 80th/90th percentile of historical memory-per-core usage, or do you use a different method? I’d be interested to hear what metrics you’ve found most useful before purchasing additional compute nodes.