mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-03 09:22:44 +00:00
Merge pull request #79453 from chendave/short-circuit
Short-circuit the evaluation of `cpuFraction` and `memoryFraction`
This commit is contained in:
commit
9e5018ba20
@ -42,9 +42,14 @@ func balancedResourceScorer(requested, allocable *schedulernodeinfo.Resource, in
|
|||||||
cpuFraction := fractionOfCapacity(requested.MilliCPU, allocable.MilliCPU)
|
cpuFraction := fractionOfCapacity(requested.MilliCPU, allocable.MilliCPU)
|
||||||
memoryFraction := fractionOfCapacity(requested.Memory, allocable.Memory)
|
memoryFraction := fractionOfCapacity(requested.Memory, allocable.Memory)
|
||||||
// This to find a node which has most balanced CPU, memory and volume usage.
|
// This to find a node which has most balanced CPU, memory and volume usage.
|
||||||
|
if cpuFraction >= 1 || memoryFraction >= 1 {
|
||||||
|
// if requested >= capacity, the corresponding host should never be preferred.
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
if includeVolumes && utilfeature.DefaultFeatureGate.Enabled(features.BalanceAttachedNodeVolumes) && allocatableVolumes > 0 {
|
if includeVolumes && utilfeature.DefaultFeatureGate.Enabled(features.BalanceAttachedNodeVolumes) && allocatableVolumes > 0 {
|
||||||
volumeFraction := float64(requestedVolumes) / float64(allocatableVolumes)
|
volumeFraction := float64(requestedVolumes) / float64(allocatableVolumes)
|
||||||
if cpuFraction >= 1 || memoryFraction >= 1 || volumeFraction >= 1 {
|
if volumeFraction >= 1 {
|
||||||
// if requested >= capacity, the corresponding host should never be preferred.
|
// if requested >= capacity, the corresponding host should never be preferred.
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
@ -57,10 +62,6 @@ func balancedResourceScorer(requested, allocable *schedulernodeinfo.Resource, in
|
|||||||
return int64((1 - variance) * float64(schedulerapi.MaxPriority))
|
return int64((1 - variance) * float64(schedulerapi.MaxPriority))
|
||||||
}
|
}
|
||||||
|
|
||||||
if cpuFraction >= 1 || memoryFraction >= 1 {
|
|
||||||
// if requested >= capacity, the corresponding host should never be preferred.
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
// Upper and lower boundary of difference between cpuFraction and memoryFraction are -1 and 1
|
// Upper and lower boundary of difference between cpuFraction and memoryFraction are -1 and 1
|
||||||
// respectively. Multiplying the absolute value of the difference by 10 scales the value to
|
// respectively. Multiplying the absolute value of the difference by 10 scales the value to
|
||||||
// 0-10 with 0 representing well balanced allocation and 10 poorly balanced. Subtracting it from
|
// 0-10 with 0 representing well balanced allocation and 10 poorly balanced. Subtracting it from
|
||||||
|
Loading…
Reference in New Issue
Block a user