From 83f5afd3903c8f73dc81fc7765fa5e76c1d20d32 Mon Sep 17 00:00:00 2001 From: fengjianqing <1416100064@qq.com> Date: Wed, 3 Jul 2024 16:21:00 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E3=80=90=E4=BF=AE=E6=94=B9=E8=AF=B4?= =?UTF-8?q?=E6=98=8E=E3=80=91=E4=BF=AE=E5=A4=8D900Pod=20A2=E5=8A=A8?= =?UTF-8?q?=E6=80=81=E7=AE=97=E5=8A=9B=E5=88=87=E5=88=86=E4=B8=8D=E7=94=9F?= =?UTF-8?q?=E6=88=90hccl.json?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/ring-controller/agent/businessagent.go | 6 ++++++ pkg/ring-controller/agent/types.go | 5 +++++ 2 files changed, 11 insertions(+) diff --git a/pkg/ring-controller/agent/businessagent.go b/pkg/ring-controller/agent/businessagent.go index a1c7f5d..3c0a4f2 100644 --- a/pkg/ring-controller/agent/businessagent.go +++ b/pkg/ring-controller/agent/businessagent.go @@ -286,6 +286,12 @@ func containerUsedChip(pod *apiCoreV1.Pod) bool { // other values present use npu; func GetNPUNum(c apiCoreV1.Container) int32 { for name, qtt := range c.Resources.Limits { + if strings.HasPrefix(string(name), A910DynamicRN) { + if int32(qtt.Value()) > perCore { + return int32(qtt.Value()) / perCore + } + return singleCard + } if !strings.HasPrefix(string(name), A910ResourceName) { continue } diff --git a/pkg/ring-controller/agent/types.go b/pkg/ring-controller/agent/types.go index 164b805..3a8fcb6 100644 --- a/pkg/ring-controller/agent/types.go +++ b/pkg/ring-controller/agent/types.go @@ -73,6 +73,11 @@ const ( // InvalidNPUNum invalid NPU num InvalidNPUNum = -1 + + // A910DynamicRN resource name of 910 dynamic cut + A910DynamicRN = "huawei.com/npu-core" + perCore = 25 + singleCard = 1 ) var ( -- Gitee From de50ccdc88472da28c5eb656291c79ad0fd3ebf8 Mon Sep 17 00:00:00 2001 From: fengjianqing <1416100064@qq.com> Date: Wed, 3 Jul 2024 19:09:34 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E3=80=90=E4=BF=AE=E6=94=B9=E8=AF=B4?= =?UTF-8?q?=E6=98=8E=E3=80=91=E4=BF=AE=E5=A4=8D900Pod=20A2=E5=8A=A8?= =?UTF-8?q?=E6=80=81=E7=AE=97=E5=8A=9B=E5=88=87=E5=88=86=E4=B8=8D=E7=94=9F?= =?UTF-8?q?=E6=88=90hccl.json?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/ring-controller/agent/businessagent.go | 3 --- pkg/ring-controller/agent/types.go | 1 - 2 files changed, 4 deletions(-) diff --git a/pkg/ring-controller/agent/businessagent.go b/pkg/ring-controller/agent/businessagent.go index 3c0a4f2..61b33dc 100644 --- a/pkg/ring-controller/agent/businessagent.go +++ b/pkg/ring-controller/agent/businessagent.go @@ -287,9 +287,6 @@ func containerUsedChip(pod *apiCoreV1.Pod) bool { func GetNPUNum(c apiCoreV1.Container) int32 { for name, qtt := range c.Resources.Limits { if strings.HasPrefix(string(name), A910DynamicRN) { - if int32(qtt.Value()) > perCore { - return int32(qtt.Value()) / perCore - } return singleCard } if !strings.HasPrefix(string(name), A910ResourceName) { diff --git a/pkg/ring-controller/agent/types.go b/pkg/ring-controller/agent/types.go index 3a8fcb6..e48bfbe 100644 --- a/pkg/ring-controller/agent/types.go +++ b/pkg/ring-controller/agent/types.go @@ -76,7 +76,6 @@ const ( // A910DynamicRN resource name of 910 dynamic cut A910DynamicRN = "huawei.com/npu-core" - perCore = 25 singleCard = 1 ) -- Gitee