Skip to content
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

Add hostRequirements gpus description #38

Closed
wants to merge 2 commits into from

Conversation

anpaskin
Copy link

@anpaskin anpaskin commented May 27, 2022

Add description for new hostRequirements gpus option, added by this PR: https://github.com/github/github/pull/222154.

Note: That second diff at the end of the file doesn't actually show up as anything in the file preview, I'm not sure why it's showing up like that.

Add description for new hostRequirements gpus option, added by this PR: github/github#222154.
Copy link
Contributor

@jkeech jkeech left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for making this spec proposal!

What does a "GPU core" mean here? Is there perhaps a different unit that would be helpful? It would be great to see some example projects that need GPUs in the dev environment in order to make sure the GPU hostRequirement is sufficient to capture the project requirements.

For instance, do projects need certain types of GPUs? Should GPU support be more of a boolean or an enum?

docs/specs/devcontainerjson-reference.md Outdated Show resolved Hide resolved
@jkeech jkeech added the proposal Still under discussion, collecting feedback label May 27, 2022
@anpaskin
Copy link
Author

"GPUs" is probably a better way to express the unit. That's how this doc on our GPU SKU words the unit, for example.

As for integer vs. boolean vs. enum, maybe boolean would be more appropriate here. I'm guessing in most cases users would use 1 for the minimum GPUs, just to specify that the SKU for this repo needs to be a GPU SKU. @lostintangent may be able to provide some more context, as well as some example projects that would require GPUs in the dev environment.

@Chuxel
Copy link
Member

Chuxel commented Jun 7, 2022

It might make sense to make this an object rather than just having the cores property. Memory is another critical aspect here, so something like this might be better. It also future proofs - e.g. we could add "type".

"gpu": {
    "cores": 2
    "memory": "4gb"
}

and with type

"gpu": {
    "cores": 2
    "memory": "4gb"
    "type": "nvidia"
}

The type matters less for Azure, but would apply to local scenarios - I've seen examples of mounting AMD GPUs which wouldn't work for many ML workloads.

@Chuxel
Copy link
Member

Chuxel commented Aug 11, 2022

I moved this to an issue which is where we would normally discuss proposals before making a PR: #82

@jkeech
Copy link
Contributor

jkeech commented Aug 11, 2022

I'm going to close this PR for now and we can continue discussion on the issue. Once the design is agreed in the issue, we can revisit the PR to update the spec. Thanks!

@jkeech jkeech closed this Aug 11, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
proposal Still under discussion, collecting feedback
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants