Skip to content

Commit e9c1615

Browse files
committed
add resourcequota
Signed-off-by: Jifei Wang <[email protected]> Signed-off-by: Jifei Wang <[email protected]> Signed-off-by: Jifei Wang <[email protected]> Signed-off-by: Jifei Wang <[email protected]> Signed-off-by: Jifei Wang <[email protected]>
1 parent 6e739ee commit e9c1615

File tree

19 files changed

+710
-9
lines changed

19 files changed

+710
-9
lines changed

pkg/device/ascend/device.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -289,6 +289,14 @@ func (dev *Devices) AddResourceUsage(pod *corev1.Pod, n *device.DeviceUsage, ctr
289289
return nil
290290
}
291291

292+
func (dev *Devices) GetResourceNames() device.ResoureNames {
293+
return device.ResoureNames{
294+
ResourceCountName: dev.config.ResourceName,
295+
ResourceMemoryName: dev.config.ResourceMemoryName,
296+
ResourceCoreName: "",
297+
}
298+
}
299+
292300
func (npu *Devices) Fit(devices []*device.DeviceUsage, request device.ContainerDeviceRequest, pod *corev1.Pod, nodeInfo *device.NodeInfo, allocated *device.PodDevices) (bool, map[string]device.ContainerDevices, string) {
293301
k := request
294302
originReq := k.Nums

pkg/device/awsneuron/device.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,14 @@ func (dev *AWSNeuronDevices) CheckHealth(devType string, n *corev1.Node) (bool,
211211
return true, true
212212
}
213213

214+
func (dev *AWSNeuronDevices) GetResourceNames() device.ResoureNames {
215+
return device.ResoureNames{
216+
ResourceCountName: dev.resourceCountName,
217+
ResourceMemoryName: "",
218+
ResourceCoreName: dev.resourceCoreName,
219+
}
220+
}
221+
214222
func (dev *AWSNeuronDevices) GenerateResourceRequests(ctr *corev1.Container) device.ContainerDeviceRequest {
215223
klog.Info("Start to count awsNeuron devices for container ", ctr.Name)
216224
awsResourceCount := corev1.ResourceName(dev.resourceCountName)

pkg/device/cambricon/device.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -421,3 +421,11 @@ func (cam *CambriconDevices) Fit(devices []*device.DeviceUsage, request device.C
421421
}
422422
return false, tmpDevs, common.GenReason(reason, len(devices))
423423
}
424+
425+
func (dev *CambriconDevices) GetResourceNames() device.ResoureNames {
426+
return device.ResoureNames{
427+
ResourceCountName: MLUResourceCount,
428+
ResourceMemoryName: MLUResourceMemory,
429+
ResourceCoreName: MLUResourceCores,
430+
}
431+
}

pkg/device/common/common.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ const (
3636
AllocatedCardsInsufficientRequest = "AllocatedCardsInsufficientRequest"
3737
NodeUnfitPod = "NodeUnfitPod"
3838
NodeFitPod = "NodeFitPod"
39+
ResourceQuotaNotFit = "ResourceQuotaNotFit"
3940
)
4041

4142
func GenReason(reasons map[string]int, cards int) string {

pkg/device/devices.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ type Devices interface {
3535
MutateAdmission(ctr *corev1.Container, pod *corev1.Pod) (bool, error)
3636
CheckHealth(devType string, n *corev1.Node) (bool, bool)
3737
NodeCleanUp(nn string) error
38+
GetResourceNames() ResoureNames
3839
GetNodeDevices(n corev1.Node) ([]*DeviceInfo, error)
3940
LockNode(n *corev1.Node, p *corev1.Pod) error
4041
ReleaseNodeLock(n *corev1.Node, p *corev1.Pod) error

pkg/device/enflame/device.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -327,3 +327,11 @@ func (enf *EnflameDevices) Fit(devices []*device.DeviceUsage, request device.Con
327327
}
328328
return false, tmpDevs, common.GenReason(reason, len(devices))
329329
}
330+
331+
func (dev *EnflameDevices) GetResourceNames() device.ResoureNames {
332+
return device.ResoureNames{
333+
ResourceCountName: EnflameResourceNameVGCU,
334+
ResourceMemoryName: EnflameResourceNameVGCUPercentage,
335+
ResourceCoreName: "",
336+
}
337+
}

pkg/device/enflame/gcu.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,6 +182,14 @@ func (gcuDev *GCUDevices) Fit(devices []*device.DeviceUsage, request device.Cont
182182
return false, tmpDevs, common.GenReason(reason, len(devices))
183183
}
184184

185+
func (dev *GCUDevices) GetResourceNames() device.ResoureNames {
186+
return device.ResoureNames{
187+
ResourceCountName: EnflameResourceNameGCU,
188+
ResourceMemoryName: "",
189+
ResourceCoreName: "",
190+
}
191+
}
192+
185193
func (dev *GCUDevices) checkType(n device.ContainerDeviceRequest) bool {
186194
return n.Type == EnflameGCUDevice
187195
}

pkg/device/hygon/device.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -373,3 +373,11 @@ func (dcu *DCUDevices) Fit(devices []*device.DeviceUsage, request device.Contain
373373
}
374374
return false, tmpDevs, common.GenReason(reason, len(devices))
375375
}
376+
377+
func (dev *DCUDevices) GetResourceNames() device.ResoureNames {
378+
return device.ResoureNames{
379+
ResourceCountName: HygonResourceCount,
380+
ResourceMemoryName: HygonResourceMemory,
381+
ResourceCoreName: HygonResourceCores,
382+
}
383+
}

pkg/device/iluvatar/device.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -332,3 +332,11 @@ func (ilu *IluvatarDevices) Fit(devices []*device.DeviceUsage, request device.Co
332332
}
333333
return false, tmpDevs, common.GenReason(reason, len(devices))
334334
}
335+
336+
func (dev *IluvatarDevices) GetResourceNames() device.ResoureNames {
337+
return device.ResoureNames{
338+
ResourceCountName: IluvatarResourceCount,
339+
ResourceMemoryName: IluvatarResourceMemory,
340+
ResourceCoreName: IluvatarResourceCores,
341+
}
342+
}

pkg/device/kunlun/device.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -224,6 +224,14 @@ func (kl *KunlunDevices) Fit(devices []*device.DeviceUsage, request device.Conta
224224
return true, tmpDevs, ""
225225
}
226226

227+
func (dev *KunlunDevices) GetResourceNames() device.ResoureNames {
228+
return device.ResoureNames{
229+
ResourceCountName: KunlunResourceCount,
230+
ResourceMemoryName: "",
231+
ResourceCoreName: "",
232+
}
233+
}
234+
227235
func FitXPU(device *device.DeviceUsage, request device.ContainerDeviceRequest) bool {
228236
return device.Used == 0
229237
}

0 commit comments

Comments
 (0)