Hi - I have a slurm usage question that I haven't been able to figure out from
the docs. We basically have two types of jobs - ones that require entire
nodes, and ones that do not. An additional (minor) complication is that the
nodes have hyperthreading enabled, but we want (usually) to use only one task
per physical core (in both kinds of jobs). What's the best way to request
resources from sbatch to ensure this happens? Would the following produce this
effect?
entire node: --nodes=number_of_nodes --tasks_per_node=number_of_cores_per_node
partial node: --ntasks=total_number_of_tasks --tasks-per-core=1
If not, is there another way to do this?
And however we achieve this, how does slurm decide what order to assign nodes
to jobs in the presence of jobs that don't take entire nodes. If we have a 2
16 core nodes and two 8 task jobs, are they going to be packed into a single
node, or each on its own node (leaving no free node for another 16 task job
that requires an entire node)?
thanks,
Noam