-
Story
-
Resolution: Unresolved
-
Undefined
-
None
-
None
-
None
-
None
-
Product / Portfolio Work
-
False
-
-
False
-
None
-
None
-
None
-
None
Goal
Add partitionable devices (KEP-4815) support to the kubernetes-sigs/dra-example-driver, enabling demonstration and testing of the DRAPartitionableDevices feature.
Links
- Repository: https://github.com/kubernetes-sigs/dra-example-driver
- PR: https://github.com/kubernetes-sigs/dra-example-driver/pull/150
- Kubernetes Enhancement: https://github.com/kubernetes/enhancements/issues/4815
- KEP: https://github.com/kubernetes/enhancements/tree/master/keps/sig-scheduling/4815-dra-partitionable-devices
Implementation Approach
- Extend EnumerateDevices() in internal/profiles/gpu/gpu.go to publish SharedCounters
- Add DeviceCounterConsumption to device definitions
- Add CLI flags -
partitionable-devicesand -partitions-per-gpu - Create partition devices that consume from shared counter sets
- Add unit tests for partitionable device enumeration
Key Files Modified
- cmd/dra-example-kubeletplugin/main.go - Added CLI flags for partitionable devices
- internal/profiles/gpu/gpu.go - Added partitionable devices enumeration logic
- internal/profiles/gpu/gpu_test.go - Added unit tests
Acceptance Criteria
- Driver can publish devices with SharedCounters (CounterSet)
- Devices can declare counter consumption via DeviceCounterConsumption
- Scheduler correctly allocates partitioned devices based on available counters
- Unit tests pass
Done Checklist
- DEV - PR submitted: https://github.com/kubernetes-sigs/dra-example-driver/pull/150