My understanding is that the --ntasks-per-node directive applies to each job rather than to the array as a whole. To make each job in the array require exclusive access to a compute node, I think you want to replace --ntasks-per-node=1 with --nodes=1.
I found Harvard University's documentation on job arrays helpful. https://rc.fas.harvard.edu/resources/running-jobs/#Job_arrays > sbatch --array=1-10 --ntasks-per-node=1 -o env.log-%A.%a > --wrap="/usr/bin/env" > > I'd like to distribute each task on a different node but it looks like > it is using fill up the node before moving on to the next node.
