WIP: Temporary workaround to ensure biggest CI created inside GI #158
+356
−73
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.
This pulls in a temporary change to ensure that the CI created within a GI is always of maximum size. It is a WIP because the change in go-nvlib is not yet finalized, so we can't actually vendor in the solution yet.
It works by reversing the loop that walks through CIs to ensure that we visit up any "newer" CI profiles before visiting older ones. The assumption being that newer ones may provide a CI definition that has a larger memory slice count with the same compute slice count. Unfortunately, we don't have a way to distinguish this in the canonical naming convention, so the same names refers to both MIG devices -- hence the bug.
We need a more robust / comprehensive solution to this issue, possibly introducing a "custom" naming convention to distibguish the cases.