feat(scheduler): scale the extender output in generic scheduler

This commit is contained in:
draveness 2019-10-04 10:21:01 +08:00
parent 3b58b35921
commit 27326e4f9a
2 changed files with 5 additions and 3 deletions

View File

@ -23,10 +23,10 @@ import (
const (
// MinExtenderPriority defines the min priority value for extender.
MinExtenderPriority int = 0
MinExtenderPriority int64 = 0
// MaxExtenderPriority defines the max priority value for extender.
MaxExtenderPriority int = 10
MaxExtenderPriority int64 = 10
)
// ExtenderPreemptionResult represents the result returned by preemption phase of extender.

View File

@ -840,7 +840,9 @@ func PrioritizeNodes(
// wait for all go routines to finish
wg.Wait()
for i := range result {
result[i].Score += combinedScores[result[i].Name]
// MaxExtenderPriority may diverge from the max priority used in the scheduler and defined by MaxNodeScore,
// therefore we need to scale the score returned by extenders to the score range used by the scheduler.
result[i].Score += combinedScores[result[i].Name] * (framework.MaxNodeScore / extenderv1.MaxExtenderPriority)
}
}