Set gpumem and gpuutil to zero, if a gpumem infinite value is detected - #8
Open
b-reyes wants to merge 2 commits into
Open
Set gpumem and gpuutil to zero, if a gpumem infinite value is detected#8b-reyes wants to merge 2 commits into
b-reyes wants to merge 2 commits into
Conversation
…d when collecting the metrics for each job step
… is only done if non-infinite values are found (allows us to correctly identify incompatible GPUs)
mohalkh5
approved these changes
Aug 3, 2026
mohalkh5
left a comment
Contributor
There was a problem hiding this comment.
Looks good to me, thanks for tracking down the issue and for the thorough testing.
One question: regarding seff not working for the older A100 GRES jobs, do you think it's worth adding a brief note in the output/display message to let users know why GPU metrics aren't shown, or would that be overkill?
Other than that all looks good! Approved!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
In this PR I set
gpumemandgpuutilto zero, if agpumeminfinite value is detected when collecting the metrics for each job step and there are no infinite values detected. The reason why this is necessary is that some jobs have job steps that have GPU utilization and some of them are CPU-only. In the CPU-only ones, the Slurm database will report infinite values forgpumemandgpuutil, if other job steps do have some GPU utilization. By setting the values to zero for these, we can correctly obtain thegpumemandgpuutilvalues. We do not want to just outright set all infinite values to zero as later in the code we use all infinite values ingpumem/gpuutilto determine an incompatible GPU.Note. Given that we transitioned over to the new GRES for the A100s, any old job that just used
a100in the gres will not behave correctly inseff. For example,seff 20704335. Although this is the case, users will still be able to see the results insacct. Given there is a workaround for this case, I do not think it is worth it to address this corner case in the current version ofseffTesting
New GPU partitions
./seff 30738094./seff 30738167Tests using new GRES layout on Alpine:
./seff 29426746
./seff 28711080_66
./seff 29437179 (This is a CPU example)
Tests using old gres format on Alpine (checks for backward compatibility)
./seff 20522520
./seff 19920255 --> This is a GH200 example (in the old style the GPU type and GPU metrics will not work due to new gres)
./seff 20704335 (example of jobs that uses old
a100gres so only CPU metrics will display now)./seff 20374346
./seff 27802287 --> old CPU example
Blanca (all old examples, as we did not change GRES settings on Blanca)
./seff 21743835
./seff 21925455
./seff 20237774
./seff 21921652
./seff 21920467
./seff 20036817
./seff 21735102
./seff 21915919