in azure-slurm/slurmcc/cli.py [0:0]
def preprocess_node_mgr(self, config: Dict, node_mgr: NodeManager) -> None:
def default_dampened_memory(node: Node) -> Memory:
return min(node.memory - Memory.value_of("1g"), node.memory * 0.95)
node_mgr.add_default_resource(
selection={},
resource_name="slurm_memory",
default_value=default_dampened_memory,
)
for b in node_mgr.get_buckets():
if "nodearrays" not in config:
config["nodearrays"] = {}
if b.nodearray not in config["nodearrays"]:
config["nodearrays"][b.nodearray] = {}
if "generated_placement_group_buffer" in config["nodearrays"][b.nodearray]:
continue
is_hpc = (
str(
b.software_configuration.get("slurm", {}).get("hpc") or "false"
).lower()
== "true"
)
if is_hpc:
buffer = 1
max_pgs = 1
else:
buffer = 0
max_pgs = 0
config["nodearrays"][b.nodearray][
"generated_placement_group_buffer"
] = buffer
config["nodearrays"][b.nodearray][
"max_placement_groups"
] = max_pgs
super().preprocess_node_mgr(config, node_mgr)