intel / intel/intel-device-plugins-for-kubernetes
Options for GPU Sharing between Containers Running on a Workstation
- Dominant language
- Go
- Stars
- 147
- Forks
- 223
- Avg merge
- 3d 23h
- Merged PRs (30d)
- 18
Description
**Describe the support request**
Hello, I'm trying to understand options that would allow multiple containers to share a single GPU.
I see that [K8s device plugins](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/) in general are not meant to allow a device to be shared between containers.
I also see from the [GPU plugin docs](https://github.com/intel/intel-device-plugins-for-kubernetes/blob/main/cmd/gpu_plugin/README.md#operation-modes-for-different-workload-types) in this repo that there is a `sharedDevNum` that can be used for sharing a GPU, but I infer this is partitioning the resources on the GPU so each container is only allocated a fraction of the GPU's resources. Is that correct?
My use case is a tool called [data-science-stack](https://github.com/canonical/data-science-stack) that is being built to automate the deployment/management of GPU-enabled containers for quick AIML experimentation on a user's laptop or workstation. In this scenario we'd prefer the containers have the ability to each have access to the full GPU resources - much like you'd expect for applications running directly on the host. Is this possible?
**System (please complete the following information if applicable):**
- OS version: Ubuntu 22.04
- Kernel version: Linux 5.15 (HWE kernel for some newer devices)
- Device plugins version: v0.29.0 and v0.30.0 are the versions I've worked with
- Hardware info: iGPU and dGPU
Contributor guide
Assessment
This issue has not been assessed yet.