Skip to content

docs: correct the GresTypes default in the GPU section - #272

Closed
fjvbn2003 wants to merge 1 commit into
SlinkyProject:mainfrom
fjvbn2003:docs-grestypes-default
Closed

fjvbn2003 wants to merge 1 commit into
SlinkyProject:mainfrom
fjvbn2003:docs-grestypes-default

Conversation

@fjvbn2003

Copy link
Copy Markdown

Summary

The "With GPUs" section of docs/installation.md says:

Slurm requires that [GresTypes] contains the "gpu" resource. Slinky sets this by default, ...

Up to v1.1.x that was true. internal/builder/controllerbuilder/controller_config.go at v1.1.4 has these lines:

conf.AddProperty(config.NewProperty("GresTypes", "gpu"))
...
conf.AddProperty(config.NewProperty("AccountingStorageTRES", "gres/gpu"))

In v1.2.0 the default slurm.conf was pruned. CHANGELOG-1.2 says: "Pruned default slurm.conf of all non-required options". buildSlurmConf() on main (a25ec89) no longer writes GresTypes, and the expected slurm.conf strings in controller_config_test.go contain none. Slurm itself manages no GRES unless GresTypes is set. slurm.conf(5) says "No generic resources are managed by default". As a result, a reader who follows the guide and relies on the default ends up without gres/gpu.

This PR changes the sentence so that it tells the reader to set GresTypes through controller.extraConf or controller.extraConfMap. The YAML example right below already shows how to do that.

Checklist

  • I have read the
    CONTRIBUTING.md
    and the
    Code of Conduct.
  • New or existing tests cover these changes (where applicable). The change is docs only.
  • Documentation is updated if user-visible behavior changes.

Breaking Changes

None.

Testing Notes

I rendered helm/slurm at a25ec89 with Helm v3.18.2. I combined the examples from the "With GPUs" section into one values file and left out GresTypes, as the current text suggests:

configFiles:
  gres.conf: |
    AutoDetect=nvidia
nodesets:
  gpu-gb200:
    slurmd:
      resources:
        limits:
          nvidia.com/gpu: 4
    extraConfMap:
      Gres: ["gpu:GB200:4"]
$ helm template t ./helm/slurm -n slurm -f values.yaml | grep -n -i gres
46:  gres.conf: |
145:  extraConf: "Gres=gpu:GB200:4"      # NodeSet only; the Controller CR has no extraConf

The Controller CR gets no extraConf, and buildSlurmConf() adds no GresTypes, so the resulting slurm.conf has no GresTypes line.

I also checked the release history through the GitHub contents API:

ref GresTypes in controller_config.go sentence in docs/installation.md
v1.1.4 GresTypes=gpu (line 186) present
v1.2.0, v1.2.3, main absent still says "Slinky sets this by default"

Not measured: I did not run slurmctld or slurmd. I am inferring the user-visible symptom from the Slurm source rather than from a running cluster. On slurmctld, gres_name_filter() in src/interfaces/gres.c returns early when no GRES plugin is configured, so the node's Gres=gpu:... is dropped without an "Invalid GRES" error.

Additional Context

If the v1.2 docs are published from a release branch, the same sentence appears there too (v1.2.3, docs/installation.md line 352).

This change was drafted with AI assistance and reviewed by me.

🤖 Generated with Claude Code

The "With GPUs" section says Slinky sets GresTypes by default. That
default was removed when the generated slurm.conf was pruned to
required options in v1.2.0, so following the guide without setting
GresTypes leaves the gpu GRES unmanaged.

Changelog: NONE
Signed-off-by: YoungjuKim <fjvbn2003@gmail.com>
@fjvbn2003

Copy link
Copy Markdown
Author

Closing this: a2bc8c9 already removed the "Slinky sets this by default" sentence, which was the point of this PR. Thank you!

@fjvbn2003 fjvbn2003 closed this Oct 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant