From 2d9d65e0069ebbd3da647a6f4d4754213386627e Mon Sep 17 00:00:00 2001 From: Pierre-Luc Dion Date: Mon, 15 Aug 2022 09:19:58 -0400 Subject: [PATCH 1/5] Update GPU support for V100,T4,A5500. --- api/src/main/java/com/cloud/gpu/GPU.java | 46 ++++++++++++++++++++ ui/src/views/offering/AddComputeOffering.vue | 15 +++++++ 2 files changed, 61 insertions(+) diff --git a/api/src/main/java/com/cloud/gpu/GPU.java b/api/src/main/java/com/cloud/gpu/GPU.java index 8aa54c0c0f87..30a8123ed57a 100644 --- a/api/src/main/java/com/cloud/gpu/GPU.java +++ b/api/src/main/java/com/cloud/gpu/GPU.java @@ -32,6 +32,52 @@ public enum GPUType { GRID_K220Q("GRID K220Q"), GRID_K240Q("GRID K240Q"), GRID_K260("GRID K260Q"), + GRID_V100D_32A("GRID V100D-32A"), + GRID_V100D_8Q("GRID V100D-8Q"), + GRID_V100D_4A("GRID V100D-4A"), + GRID_V100D_1B("GRID V100D-1B"), + GRID_V100D_2Q("GRID V100D-2Q"), + GRID_V100D_4Q("GRID V100D-4Q"), + GRID_V100D_2A("GRID V100D-2A"), + GRID_V100D_2B("GRID V100D-2B"), + GRID_V100D_32Q("GRID V100D-32Q"), + GRID_V100D_16A("GRID V100D-16A"), + GRID_V100D_1Q("GRID V100D-1Q"), + GRID_V100D_2B4("GRID V100D-2B4"), + GRID_V100D_16Q("GRID V100D-16Q"), + GRID_V100D_8A("GRID V100D-8A"), + GRID_V100D_1A("GRID V100D-1A"), + GRID_T4_16A("GRID T4-16A"), + GRID_T4_2B4("GRID T4-2B4"), + GRID_T4_4Q("GRID T4-4Q"), + GRID_T4_16Q("GRID T4-16Q"), + GRID_T4_4A("GRID T4-4A"), + GRID_T4_1A("GRID T4-1A"), + GRID_T4_2Q("GRID T4-2Q"), + GRID_T4_2B("GRID T4-2B"), + GRID_T4_8Q("GRID T4-8Q"), + GRID_T4_2A("GRID T4-2A"), + GRID_T4_1B("GRID T4-1B"), + GRID_T4_1Q("GRID T4-1Q"), + GRID_T4_8A("GRID T4-8A"), + NVIDIA_RTX5500_1A("NVIDIA RTXA5500-1A"), + NVIDIA_RTX5500_1B("NVIDIA RTXA5500-1B"), + NVIDIA_RTX5500_1Q("NVIDIA RTXA5500-1Q"), + NVIDIA_RTX5500_2A("NVIDIA RTXA5500-2A"), + NVIDIA_RTX5500_2B("NVIDIA RTXA5500-2B"), + NVIDIA_RTX5500_2Q("NVIDIA RTXA5500-2Q"), + NVIDIA_RTX5500_3A("NVIDIA RTXA5500-3A"), + NVIDIA_RTX5500_3Q("NVIDIA RTXA5500-3Q"), + NVIDIA_RTX5500_4A("NVIDIA RTXA5500-4A"), + NVIDIA_RTX5500_4Q("NVIDIA RTXA5500-4Q"), + NVIDIA_RTX5500_6A("NVIDIA RTXA5500-6A"), + NVIDIA_RTX5500_6Q("NVIDIA RTXA5500-6Q"), + NVIDIA_RTX5500_8A("NVIDIA RTXA5500-8A"), + NVIDIA_RTX5500_8Q("NVIDIA RTXA5500-8Q"), + NVIDIA_RTX5500_12A("NVIDIA RTXA5500-12A"), + NVIDIA_RTX5500_12Q("NVIDIA RTXA5500-12Q"), + NVIDIA_RTX5500_24A("NVIDIA RTXA5500-24A"), + NVIDIA_RTX5500_24Q("NVIDIA RTXA5500-24Q"), passthrough("passthrough"); private String type; diff --git a/ui/src/views/offering/AddComputeOffering.vue b/ui/src/views/offering/AddComputeOffering.vue index 5cd68c5d216f..146049f2261c 100644 --- a/ui/src/views/offering/AddComputeOffering.vue +++ b/ui/src/views/offering/AddComputeOffering.vue @@ -651,6 +651,21 @@ export default { value: 'Group of NVIDIA Corporation GK104GL [GRID K2] GPUs', title: 'NVIDIA GRID K2', vgpu: ['', 'passthrough', 'GRID K200', 'GRID K220Q', 'GRID K240Q', 'GRID K260Q', 'GRID K280Q'] + }, + { + value: 'Group of NVIDIA Corporation GV100GL [TESLA V100] GPUs', + title: 'NVIDIA TESLA V100', + vgpu: ['', 'passthrough', 'GRID V100D-32A', 'GRID V100D-8Q', 'GRID V100D-4A', 'GRID V100D-1B', 'GRID V100D-2Q', 'GRID V100D-4Q', 'GRID V100D-2A', 'GRID V100D-2B', 'GRID V100D-32Q', 'GRID V100D-16A', 'GRID V100D-1Q', 'GRID V100D-2B4', 'GRID V100D-16Q', 'GRID V100D-8A', 'GRID V100D-1A'] + }, + { + value: 'Group of Nvidia Corporation TU104GL [Tesla T4] GPUs', + title: 'NVIDIA TESLA T4', + vgpu: ['', 'passthrough', 'GRID T4-16A', 'GRID T4-2B4', 'GRID T4-4Q', 'GRID T4-16Q', 'GRID T4-4A', 'GRID T4-1A', 'GRID T4-2Q', 'GRID T4-2B', 'GRID T4-8Q', 'GRID T4-2A', 'GRID T4-1B', 'GRID T4-1Q', 'GRID T4-8A'] + }, + { + value: 'Group of Nvidia Corporation GA102 [RTX A5500] GPUs', + title: 'NVIDIA RTX A5500', + vgpu: ['', 'passthrough', 'NVIDIA RTXA5500-1A', 'NVIDIA RTXA5500-1B', 'NVIDIA RTXA5500-1Q', 'NVIDIA RTXA5500-2A', 'NVIDIA RTXA5500-2B', 'NVIDIA RTXA5500-2Q', 'NVIDIA RTXA5500-3A', 'NVIDIA RTXA5500-3Q', 'NVIDIA RTXA5500-4A', 'NVIDIA RTXA5500-4Q', 'NVIDIA RTXA5500-6A', 'NVIDIA RTXA5500-6Q', 'NVIDIA RTXA5500-8A', 'NVIDIA RTXA5500-8Q', 'NVIDIA RTXA5500-12A', 'NVIDIA RTXA5500-12Q', 'NVIDIA RTXA5500-24A', 'NVIDIA RTXA5500-24Q'] } ], vGpuVisible: false, From c8ac39708b6b735ce7405e59f2b04077660863ee Mon Sep 17 00:00:00 2001 From: Pierre-Luc Dion Date: Mon, 30 Oct 2023 12:07:27 -0400 Subject: [PATCH 2/5] @shwstppr suggested UI change to use dropdown select box. --- ui/src/views/offering/AddComputeOffering.vue | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/ui/src/views/offering/AddComputeOffering.vue b/ui/src/views/offering/AddComputeOffering.vue index 146049f2261c..a5622608d438 100644 --- a/ui/src/views/offering/AddComputeOffering.vue +++ b/ui/src/views/offering/AddComputeOffering.vue @@ -244,14 +244,19 @@ - - + showSearch + optionFilterProp="label" + :filterOption="(input, option) => { + return option.children[0].children.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }" + :placeholder="$t('label.gpu')" + @change="handleGpuChange"> + {{ opt.title }} - - + + Date: Mon, 30 Oct 2023 13:38:42 -0400 Subject: [PATCH 3/5] add vGPU and card support, fix ordering --- ui/src/views/offering/AddComputeOffering.vue | 29 ++++++++++++-------- 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/ui/src/views/offering/AddComputeOffering.vue b/ui/src/views/offering/AddComputeOffering.vue index a5622608d438..80d200f1f25d 100644 --- a/ui/src/views/offering/AddComputeOffering.vue +++ b/ui/src/views/offering/AddComputeOffering.vue @@ -647,30 +647,35 @@ export default { title: this.$t('label.none'), vgpu: [] }, - { - value: 'Group of NVIDIA Corporation GK107GL [GRID K1] GPUs', - title: 'NVIDIA GRID K1', - vgpu: ['', 'passthrough', 'GRID K100', 'GRID K120Q', 'GRID K140Q', 'GRID K160Q', 'GRID K180Q'] - }, - { - value: 'Group of NVIDIA Corporation GK104GL [GRID K2] GPUs', - title: 'NVIDIA GRID K2', - vgpu: ['', 'passthrough', 'GRID K200', 'GRID K220Q', 'GRID K240Q', 'GRID K260Q', 'GRID K280Q'] - }, { value: 'Group of NVIDIA Corporation GV100GL [TESLA V100] GPUs', title: 'NVIDIA TESLA V100', - vgpu: ['', 'passthrough', 'GRID V100D-32A', 'GRID V100D-8Q', 'GRID V100D-4A', 'GRID V100D-1B', 'GRID V100D-2Q', 'GRID V100D-4Q', 'GRID V100D-2A', 'GRID V100D-2B', 'GRID V100D-32Q', 'GRID V100D-16A', 'GRID V100D-1Q', 'GRID V100D-2B4', 'GRID V100D-16Q', 'GRID V100D-8A', 'GRID V100D-1A'] + vgpu: ['', 'passthrough', 'GRID V100D-1A', 'GRID V100D-1B', 'GRID V100D-1Q', 'GRID V100D-2A', 'GRID V100D-2B', 'GRID V100D-2B4', 'GRID V100D-2Q', 'GRID V100D-4A', 'GRID V100D-4Q', 'GRID V100D-8A', 'GRID V100D-8Q', 'GRID V100D-16A', 'GRID V100D-16Q', 'GRID V100D-32A', 'GRID V100D-32Q'] }, { value: 'Group of Nvidia Corporation TU104GL [Tesla T4] GPUs', title: 'NVIDIA TESLA T4', - vgpu: ['', 'passthrough', 'GRID T4-16A', 'GRID T4-2B4', 'GRID T4-4Q', 'GRID T4-16Q', 'GRID T4-4A', 'GRID T4-1A', 'GRID T4-2Q', 'GRID T4-2B', 'GRID T4-8Q', 'GRID T4-2A', 'GRID T4-1B', 'GRID T4-1Q', 'GRID T4-8A'] + vgpu: ['', 'passthrough', 'GRID T4-1A', 'GRID T4-1B', 'GRID T4-1Q', 'GRID T4-2A', 'GRID T4-2B', 'GRID T4-2B4', 'GRID T4-2Q', 'GRID T4-4A', 'GRID T4-4Q', 'GRID T4-8A', 'GRID T4-8Q', 'GRID T4-16A', 'GRID T4-16Q'] }, { value: 'Group of Nvidia Corporation GA102 [RTX A5500] GPUs', title: 'NVIDIA RTX A5500', vgpu: ['', 'passthrough', 'NVIDIA RTXA5500-1A', 'NVIDIA RTXA5500-1B', 'NVIDIA RTXA5500-1Q', 'NVIDIA RTXA5500-2A', 'NVIDIA RTXA5500-2B', 'NVIDIA RTXA5500-2Q', 'NVIDIA RTXA5500-3A', 'NVIDIA RTXA5500-3Q', 'NVIDIA RTXA5500-4A', 'NVIDIA RTXA5500-4Q', 'NVIDIA RTXA5500-6A', 'NVIDIA RTXA5500-6Q', 'NVIDIA RTXA5500-8A', 'NVIDIA RTXA5500-8Q', 'NVIDIA RTXA5500-12A', 'NVIDIA RTXA5500-12Q', 'NVIDIA RTXA5500-24A', 'NVIDIA RTXA5500-24Q'] + }, + { + value: 'Group of NVIDIA Corporation GA102GL [A40] GPUs', + title: 'NVIDIA RTX A40', + vgpu: ['', 'passthrough', 'NVIDIA A40-1A', 'NVIDIA A40-1B', 'NVIDIA A40-1Q', 'NVIDIA A40-2A', 'NVIDIA A40-2B', 'NVIDIA A40-2Q', 'NVIDIA A40-3A', 'NVIDIA A40-3Q', 'NVIDIA A40-4A', 'NVIDIA A40-4Q', 'NVIDIA A40-6A', 'NVIDIA A40-6Q', 'NVIDIA A40-8A', 'NVIDIA A40-8Q', 'NVIDIA A40-12A', 'NVIDIA A40-12Q', 'NVIDIA A40-16A', 'NVIDIA A40-16Q', 'NVIDIA A40-24A', 'NVIDIA A40-24Q', 'NVIDIA A40-48A', 'NVIDIA A40-48Q'] + }, + { + value: 'Group of NVIDIA Corporation GA107 [NVIDIA A16/NVIDIA A2] GPUs', + title: 'NVIDIA RTX A2', + vgpu: ['', 'passthrough', 'NVIDIA A2-1A', 'NVIDIA A2-1B', 'NVIDIA A2-1Q', 'NVIDIA A2-2A', 'NVIDIA A2-2B', 'NVIDIA A2-2Q', 'NVIDIA A2-4A', 'NVIDIA A2-4Q', 'NVIDIA A2-8A', 'NVIDIA A2-8Q', 'NVIDIA A2-16A', 'NVIDIA A2-16Q'] + }, + { + value: 'Group of NVIDIA Corporation GA102GL [A10] GPUs', + title: 'NVIDIA RTX A10', + vgpu: ['', 'passthrough', 'NVIDIA A10-1A', 'NVIDIA A10-1B', 'NVIDIA A10-1Q', 'NVIDIA A10-2A', 'NVIDIA A10-2B', 'NVIDIA A10-2Q', 'NVIDIA A10-3A', 'NVIDIA A10-3Q', 'NVIDIA A10-4A', 'NVIDIA A10-4Q', 'NVIDIA A10-6A', 'NVIDIA A10-6Q', 'NVIDIA A10-8A', 'NVIDIA A10-8Q', 'NVIDIA A10-12A', 'NVIDIA A10-12Q', 'NVIDIA A10-24A', 'NVIDIA A10-24Q'] } ], vGpuVisible: false, From 375c982e255826ad645573c64f350f3d8e8226d8 Mon Sep 17 00:00:00 2001 From: Pierre-Luc Dion Date: Mon, 30 Oct 2023 13:52:33 -0400 Subject: [PATCH 4/5] add vGPU types --- api/src/main/java/com/cloud/gpu/GPU.java | 52 ++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/api/src/main/java/com/cloud/gpu/GPU.java b/api/src/main/java/com/cloud/gpu/GPU.java index 30a8123ed57a..10c7369c8b1d 100644 --- a/api/src/main/java/com/cloud/gpu/GPU.java +++ b/api/src/main/java/com/cloud/gpu/GPU.java @@ -78,6 +78,58 @@ public enum GPUType { NVIDIA_RTX5500_12Q("NVIDIA RTXA5500-12Q"), NVIDIA_RTX5500_24A("NVIDIA RTXA5500-24A"), NVIDIA_RTX5500_24Q("NVIDIA RTXA5500-24Q"), + NVIDIA_A40_1A("NVIDIA A40-1A"), + NVIDIA_A40_1B("NVIDIA A40-1B"), + NVIDIA_A40_1Q("NVIDIA A40-1Q"), + NVIDIA_A40_2A("NVIDIA A40-2A"), + NVIDIA_A40_2B("NVIDIA A40-2B"), + NVIDIA_A40_2Q("NVIDIA A40-2Q"), + NVIDIA_A40_3A("NVIDIA A40-3A"), + NVIDIA_A40_3Q("NVIDIA A40-3Q"), + NVIDIA_A40_4A("NVIDIA A40-4A"), + NVIDIA_A40_4Q("NVIDIA A40-4Q"), + NVIDIA_A40_6A("NVIDIA A40-6A"), + NVIDIA_A40_6Q("NVIDIA A40-6Q"), + NVIDIA_A40_8A("NVIDIA A40-8A"), + NVIDIA_A40_8Q("NVIDIA A40-8Q"), + NVIDIA_A40_12A("NVIDIA A40-12A"), + NVIDIA_A40_12Q("NVIDIA A40-12Q"), + NVIDIA_A40_16A("NVIDIA A40-16A"), + NVIDIA_A40_16Q("NVIDIA A40-16Q"), + NVIDIA_A40_24A("NVIDIA A40-24A"), + NVIDIA_A40_24Q("NVIDIA A40-24Q"), + NVIDIA_A40_48A("NVIDIA A40-48A"), + NVIDIA_A40_48Q("NVIDIA A40-48Q"), + NVIDIA_A2_1A("NVIDIA A2-1A"), + NVIDIA_A2_1B("NVIDIA A2-1B"), + NVIDIA_A2_1Q("NVIDIA A2-1Q"), + NVIDIA_A2_2A("NVIDIA A2-2A"), + NVIDIA_A2_2B("NVIDIA A2-2B"), + NVIDIA_A2_2Q("NVIDIA A2-2Q"), + NVIDIA_A2_4A("NVIDIA A2-4A"), + NVIDIA_A2_4Q("NVIDIA A2-4Q"), + NVIDIA_A2_8A("NVIDIA A2-8A"), + NVIDIA_A2_8Q("NVIDIA A2-8Q"), + NVIDIA_A2_16A("NVIDIA A2-16A"), + NVIDIA_A2_16Q("NVIDIA A2-16Q"), + NVIDIA_A10_1A("NVIDIA A10-1A"), + NVIDIA_A10_1B("NVIDIA A10-1B"), + NVIDIA_A10_1Q("NVIDIA A10-1Q"), + NVIDIA_A10_2A("NVIDIA A10-2A"), + NVIDIA_A10_2B("NVIDIA A10-2B"), + NVIDIA_A10_2Q("NVIDIA A10-2Q"), + NVIDIA_A10_3A("NVIDIA A10-3A"), + NVIDIA_A10_3Q("NVIDIA A10-3Q"), + NVIDIA_A10_4A("NVIDIA A10-4A"), + NVIDIA_A10_4Q("NVIDIA A10-4Q"), + NVIDIA_A10_6A("NVIDIA A10-6A"), + NVIDIA_A10_6Q("NVIDIA A10-6Q"), + NVIDIA_A10_8A("NVIDIA A10-8A"), + NVIDIA_A10_8Q("NVIDIA A10-8Q"), + NVIDIA_A10_12A("NVIDIA A10-12A"), + NVIDIA_A10_12Q("NVIDIA A10-12Q"), + NVIDIA_A10_24A("NVIDIA A10-24A"), + NVIDIA_A10_24Q("NVIDIA A10-24Q"), passthrough("passthrough"); private String type; From 454aa4cfa18cf56d132ce92a67a1442806c1ab27 Mon Sep 17 00:00:00 2001 From: Pierre-Luc Dion Date: Mon, 30 Oct 2023 13:54:28 -0400 Subject: [PATCH 5/5] remove outdated vGPU --- api/src/main/java/com/cloud/gpu/GPU.java | 7 ------- 1 file changed, 7 deletions(-) diff --git a/api/src/main/java/com/cloud/gpu/GPU.java b/api/src/main/java/com/cloud/gpu/GPU.java index 10c7369c8b1d..64ff24a8279c 100644 --- a/api/src/main/java/com/cloud/gpu/GPU.java +++ b/api/src/main/java/com/cloud/gpu/GPU.java @@ -25,13 +25,6 @@ public enum Keys { } public enum GPUType { - GRID_K100("GRID K100"), - GRID_K120Q("GRID K120Q"), - GRID_K140Q("GRID K140Q"), - GRID_K200("GRID K200"), - GRID_K220Q("GRID K220Q"), - GRID_K240Q("GRID K240Q"), - GRID_K260("GRID K260Q"), GRID_V100D_32A("GRID V100D-32A"), GRID_V100D_8Q("GRID V100D-8Q"), GRID_V100D_4A("GRID V100D-4A"),