Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

shape=triangle which consists of nodes 3, 4, 7, or 8

Example 1: Interaction between server's node_group_key

...

If the server has node_group_key=color and a job requests select=group=shape, the job will be placed on:

shape=square nodes 1-2, 5-6

shape=triangle nodes 3-4 7-7

...

with multiple chunk complexes.  One chunk complex has per-chunk placement and the other does not.

node_group_key=color

select=2:ncpus=1:group=shape+2:ncpus=1

Chunk complex 2:ncpus=1:group=shape will be run on the same node selection as example 1its group=shape

shape=square nodes 1-2, 5-6

shape=triangle nodes 3-4, 7-8

chunk complex 2:ncpus=1 will be run on the node_group_key=color

color=blue nodes 1-4

color=red nodes 5-8


Example

...

2: Per-chunk placement with two chunk complexes with different groups.

no per-job placement

select=2:ncpus=1:group=color+2:ncpus=1:group=shape

...

Chunk complex 2:ncpus=1:group=shape will be placed on shape=square (nodes 1-2, 5-6) or shape=triangle (nodes 3-4, 7-8)


Example

...

3: Per-chunk placement where two chunk complexes request the same group.

no per-job placement

select=2:ncpus=1:group=color+2:ncpus=1:group=color

...

Currently if no placement set is large enough (when empty) to fit a job, the job will span across all nodes.  This can be controlled with the scheduler's do_not_span_psets attribute.  If do_not_span_psets is true, and a job can not fit within any placement set, the job not span and will never run.

If no per-chunk placement is requested, per-job placement set spanning will work like it does today

...