-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Paritionable model with grouped resources #29
Paritionable model with grouped resources #29
Conversation
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: johnbelamaric The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
// | ||
// +listType=atomic | ||
// +optional | ||
SharedCapacity []SharedCapacity `json:"sharedCapacity,omitempty"` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe items
is a better name so it's not stuttering so much.
SharedCapacity []SharedCapacity `json:"sharedCapacity,omitempty"` | |
Items []SharedCapacity `json:"items,omitempty"` |
I'd also say that its not optional. If you have one of these, it should have at least one item in it.
// SharedCapacity defines the sets of shared capacity consumable by | ||
// devices in this ResourceSlice. | ||
// | ||
// Must not have more than 16 entries. | ||
// | ||
// +listType=atomic | ||
// +optional | ||
SharedCapacity []SharedCapacityGroup `json:"sharedCapacity,omitempty"` | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does it make sense to double down on this PR and add the notion of SharedAttributes
with a similar structure (i.e. a named group of attributes)? Then we can create groups of common attributes that individual devices can reference by name to include (in addition to their own local attributes, which would take precedence on nameing conflicts).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I had this in some proposal somewhere, but I an't seem to find it anymore.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's combining this with option 3. I am working through various options, see #20
Let's see all the options before we decide which to iterate on.
Since this is "what's in the KEP" I think we should merge it and rebase all the options on it, so they appear as diffs. /lgtm |
Shoot, I screwed up and approved the wrong one! I meant to LGTM #27 !!! |
This is another alternative to the partitionable model.
The PR is a delta on top of #27.
Rather than flattening the individual physical GPU named resources into a single array, this is closer to Kevin's original, and keeps each physical GPU's shared resources in a separate struct. The individual devices then consume from those structs, by name. It is also possible for a device to consume from multiple shared resource groups, though that is not shown in the example.