Skip to content

Commit 28c8045

Browse files
committed
support for new mig profiles
Signed-off-by: Varun Ramachandra Sekar <vsekar@nvidia.com>
1 parent 532907f commit 28c8045

2 files changed

Lines changed: 25 additions & 7 deletions

File tree

pkg/nvlib/device/mig_profile.go

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,8 @@ import (
2828

2929
const (
3030
// AttributeMediaExtensions holds the string representation for the media extension MIG profile attribute.
31-
AttributeMediaExtensions = "me"
31+
AttributeMediaExtensions = "me"
32+
AttributeMediaExtensionsAll = "me.all"
3233
)
3334

3435
// MigProfile represents a specific MIG profile.
@@ -59,14 +60,21 @@ func (d *devicelib) NewMigProfile(giProfileID, ciProfileID, ciEngProfileID int,
5960
switch giProfileID {
6061
case nvml.GPU_INSTANCE_PROFILE_1_SLICE,
6162
nvml.GPU_INSTANCE_PROFILE_1_SLICE_REV1,
62-
nvml.GPU_INSTANCE_PROFILE_1_SLICE_REV2:
63+
nvml.GPU_INSTANCE_PROFILE_1_SLICE_REV2,
64+
nvml.GPU_INSTANCE_PROFILE_1_SLICE_GFX,
65+
nvml.GPU_INSTANCE_PROFILE_1_SLICE_NO_ME,
66+
nvml.GPU_INSTANCE_PROFILE_1_SLICE_ALL_ME:
6367
giSlices = 1
6468
case nvml.GPU_INSTANCE_PROFILE_2_SLICE,
65-
nvml.GPU_INSTANCE_PROFILE_2_SLICE_REV1:
69+
nvml.GPU_INSTANCE_PROFILE_2_SLICE_REV1,
70+
nvml.GPU_INSTANCE_PROFILE_2_SLICE_GFX,
71+
nvml.GPU_INSTANCE_PROFILE_2_SLICE_NO_ME,
72+
nvml.GPU_INSTANCE_PROFILE_2_SLICE_ALL_ME:
6673
giSlices = 2
6774
case nvml.GPU_INSTANCE_PROFILE_3_SLICE:
6875
giSlices = 3
69-
case nvml.GPU_INSTANCE_PROFILE_4_SLICE:
76+
case nvml.GPU_INSTANCE_PROFILE_4_SLICE,
77+
nvml.GPU_INSTANCE_PROFILE_4_SLICE_GFX:
7078
giSlices = 4
7179
case nvml.GPU_INSTANCE_PROFILE_6_SLICE:
7280
giSlices = 6
@@ -104,6 +112,9 @@ func (d *devicelib) NewMigProfile(giProfileID, ciProfileID, ciEngProfileID int,
104112
case nvml.GPU_INSTANCE_PROFILE_1_SLICE_REV1,
105113
nvml.GPU_INSTANCE_PROFILE_2_SLICE_REV1:
106114
attrs = append(attrs, AttributeMediaExtensions)
115+
case nvml.GPU_INSTANCE_PROFILE_1_SLICE_ALL_ME,
116+
nvml.GPU_INSTANCE_PROFILE_2_SLICE_ALL_ME:
117+
attrs = append(attrs, AttributeMediaExtensionsAll)
107118
}
108119

109120
p := &MigProfileInfo{

pkg/nvlib/device/mig_profile_test.go

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,16 +48,23 @@ func newMockDeviceLib() Interface {
4848
info := nvml.GpuInstanceProfileInfo{}
4949
switch Profile {
5050
case nvml.GPU_INSTANCE_PROFILE_1_SLICE,
51-
nvml.GPU_INSTANCE_PROFILE_1_SLICE_REV1:
51+
nvml.GPU_INSTANCE_PROFILE_1_SLICE_REV1,
52+
nvml.GPU_INSTANCE_PROFILE_1_SLICE_GFX,
53+
nvml.GPU_INSTANCE_PROFILE_1_SLICE_NO_ME,
54+
nvml.GPU_INSTANCE_PROFILE_1_SLICE_ALL_ME:
5255
info.MemorySizeMB = 5 * 1024
5356
case nvml.GPU_INSTANCE_PROFILE_1_SLICE_REV2:
5457
info.MemorySizeMB = 10 * 1024
5558
case nvml.GPU_INSTANCE_PROFILE_2_SLICE,
56-
nvml.GPU_INSTANCE_PROFILE_2_SLICE_REV1:
59+
nvml.GPU_INSTANCE_PROFILE_2_SLICE_REV1,
60+
nvml.GPU_INSTANCE_PROFILE_2_SLICE_GFX,
61+
nvml.GPU_INSTANCE_PROFILE_2_SLICE_NO_ME,
62+
nvml.GPU_INSTANCE_PROFILE_2_SLICE_ALL_ME:
5763
info.MemorySizeMB = 10 * 1024
5864
case nvml.GPU_INSTANCE_PROFILE_3_SLICE:
5965
info.MemorySizeMB = 20 * 1024
60-
case nvml.GPU_INSTANCE_PROFILE_4_SLICE:
66+
case nvml.GPU_INSTANCE_PROFILE_4_SLICE,
67+
nvml.GPU_INSTANCE_PROFILE_4_SLICE_GFX:
6168
info.MemorySizeMB = 20 * 1024
6269
case nvml.GPU_INSTANCE_PROFILE_7_SLICE:
6370
info.MemorySizeMB = 40 * 1024

0 commit comments

Comments
 (0)