topology.yaml(5)

NAME
topology.yaml - Slurm configuration file for the topology plugins

DESCRIPTION

topology.yaml is a YAML-formatted configuration file that defines multiple network topologies for optimizing job resource allocation in Slurm. Each topology must have a unique name, which can be associated with a partition via the Topology=<name> parameter in the partition’s configuration. Slurm supports three topology types: block, flat, and tree. The first topology defined in the file with the cluster_default: true parameter will be used for partitions without an explicitly specified topology and cluster-wide operations not tied to a partition (e.g., slurmctld-to-slurmd communication). The file must be located in the same directory as slurm.conf. NOTE: Slurm will first check for topology.yaml. If this file exists, topology.conf file will be ignored.

EXAMPLE
- topology: topo1
  cluster_default: True
  tree:
    switches:
    - switch: sw_root
      nodes: node[01-04]
- topology: topo2
  cluster_default: False
  block:
    block_sizes:
      - 4
      - 16
    blocks:
    - block: b1
      nodes: node[01-04]
    - block: b2
      nodes: node[05-08]
    - block: b3
      nodes: node[09-12]
    - block: b4
      nodes: node[13-16]
- topology: topo3
  cluster_default: False
  flat: True

COPYING
Copyright (C) 2025 SchedMD LLC.

This file is part of Slurm, a resource management program. For details, see <https://slurm.schedmd.com/>.

Slurm is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

Slurm is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

SEE ALSO

slurm.conf(5), topology.conf(5)