mirror of
				https://github.com/optim-enterprises-bv/kubernetes.git
				synced 2025-11-04 04:08:16 +00:00 
			
		
		
		
	Fix nits in comments for NodeResources plugins
This commit is contained in:
		@@ -220,42 +220,42 @@ func TestNodeResourcesBalancedAllocation(t *testing.T) {
 | 
				
			|||||||
		name         string
 | 
							name         string
 | 
				
			||||||
	}{
 | 
						}{
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores (remaining resources) on 0-10 scale
 | 
								// Node1 scores (remaining resources) on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Fraction: 0 / 4000 = 0%
 | 
								// CPU Fraction: 0 / 4000 = 0%
 | 
				
			||||||
			// Memory Fraction: 0 / 10000 = 0%
 | 
								// Memory Fraction: 0 / 10000 = 0%
 | 
				
			||||||
			// Node1 Score: 10 - (0-0)*100 = 100
 | 
								// Node1 Score: MaxNodeScore - (0-0)*MaxNodeScore = MaxNodeScore
 | 
				
			||||||
			// Node2 scores (remaining resources) on 0-10 scale
 | 
								// Node2 scores (remaining resources) on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Fraction: 0 / 4000 = 0 %
 | 
								// CPU Fraction: 0 / 4000 = 0 %
 | 
				
			||||||
			// Memory Fraction: 0 / 10000 = 0%
 | 
								// Memory Fraction: 0 / 10000 = 0%
 | 
				
			||||||
			// Node2 Score: 10 - (0-0)*100 = 100
 | 
								// Node2 Score: MaxNodeScore - (0-0)*MaxNodeScore = MaxNodeScore
 | 
				
			||||||
			pod:          &v1.Pod{Spec: noResources},
 | 
								pod:          &v1.Pod{Spec: noResources},
 | 
				
			||||||
			nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 4000, 10000)},
 | 
								nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 4000, 10000)},
 | 
				
			||||||
			expectedList: []framework.NodeScore{{Name: "machine1", Score: framework.MaxNodeScore}, {Name: "machine2", Score: framework.MaxNodeScore}},
 | 
								expectedList: []framework.NodeScore{{Name: "machine1", Score: framework.MaxNodeScore}, {Name: "machine2", Score: framework.MaxNodeScore}},
 | 
				
			||||||
			name:         "nothing scheduled, nothing requested",
 | 
								name:         "nothing scheduled, nothing requested",
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores on 0-10 scale
 | 
								// Node1 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Fraction: 3000 / 4000= 75%
 | 
								// CPU Fraction: 3000 / 4000= 75%
 | 
				
			||||||
			// Memory Fraction: 5000 / 10000 = 50%
 | 
								// Memory Fraction: 5000 / 10000 = 50%
 | 
				
			||||||
			// Node1 Score: 10 - (0.75-0.5)*100 = 75
 | 
								// Node1 Score: MaxNodeScore - (0.75-0.5)*MaxNodeScore = 75
 | 
				
			||||||
			// Node2 scores on 0-10 scale
 | 
								// Node2 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Fraction: 3000 / 6000= 50%
 | 
								// CPU Fraction: 3000 / 6000= 50%
 | 
				
			||||||
			// Memory Fraction: 5000/10000 = 50%
 | 
								// Memory Fraction: 5000/10000 = 50%
 | 
				
			||||||
			// Node2 Score: 10 - (0.5-0.5)*100 = 100
 | 
								// Node2 Score: MaxNodeScore - (0.5-0.5)*MaxNodeScore = MaxNodeScore
 | 
				
			||||||
			pod:          &v1.Pod{Spec: cpuAndMemory},
 | 
								pod:          &v1.Pod{Spec: cpuAndMemory},
 | 
				
			||||||
			nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 6000, 10000)},
 | 
								nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 6000, 10000)},
 | 
				
			||||||
			expectedList: []framework.NodeScore{{Name: "machine1", Score: 75}, {Name: "machine2", Score: framework.MaxNodeScore}},
 | 
								expectedList: []framework.NodeScore{{Name: "machine1", Score: 75}, {Name: "machine2", Score: framework.MaxNodeScore}},
 | 
				
			||||||
			name:         "nothing scheduled, resources requested, differently sized machines",
 | 
								name:         "nothing scheduled, resources requested, differently sized machines",
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores on 0-10 scale
 | 
								// Node1 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Fraction: 0 / 4000= 0%
 | 
								// CPU Fraction: 0 / 4000= 0%
 | 
				
			||||||
			// Memory Fraction: 0 / 10000 = 0%
 | 
								// Memory Fraction: 0 / 10000 = 0%
 | 
				
			||||||
			// Node1 Score: 10 - (0-0)*100 = 100
 | 
								// Node1 Score: MaxNodeScore - (0-0)*MaxNodeScore = MaxNodeScore
 | 
				
			||||||
			// Node2 scores on 0-10 scale
 | 
								// Node2 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Fraction: 0 / 4000= 0%
 | 
								// CPU Fraction: 0 / 4000= 0%
 | 
				
			||||||
			// Memory Fraction: 0 / 10000 = 0%
 | 
								// Memory Fraction: 0 / 10000 = 0%
 | 
				
			||||||
			// Node2 Score: 10 - (0-0)*100 = 100
 | 
								// Node2 Score: MaxNodeScore - (0-0)*MaxNodeScore= MaxNodeScore
 | 
				
			||||||
			pod:          &v1.Pod{Spec: noResources},
 | 
								pod:          &v1.Pod{Spec: noResources},
 | 
				
			||||||
			nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 4000, 10000)},
 | 
								nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 4000, 10000)},
 | 
				
			||||||
			expectedList: []framework.NodeScore{{Name: "machine1", Score: framework.MaxNodeScore}, {Name: "machine2", Score: framework.MaxNodeScore}},
 | 
								expectedList: []framework.NodeScore{{Name: "machine1", Score: framework.MaxNodeScore}, {Name: "machine2", Score: framework.MaxNodeScore}},
 | 
				
			||||||
@@ -268,14 +268,14 @@ func TestNodeResourcesBalancedAllocation(t *testing.T) {
 | 
				
			|||||||
			},
 | 
								},
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores on 0-10 scale
 | 
								// Node1 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Fraction: 6000 / 10000 = 60%
 | 
								// CPU Fraction: 6000 / 10000 = 60%
 | 
				
			||||||
			// Memory Fraction: 0 / 20000 = 0%
 | 
								// Memory Fraction: 0 / 20000 = 0%
 | 
				
			||||||
			// Node1 Score: 10 - (0.6-0)*100 = 40
 | 
								// Node1 Score: MaxNodeScore - (0.6-0)*MaxNodeScore = 40
 | 
				
			||||||
			// Node2 scores on 0-10 scale
 | 
								// Node2 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Fraction: 6000 / 10000 = 60%
 | 
								// CPU Fraction: 6000 / 10000 = 60%
 | 
				
			||||||
			// Memory Fraction: 5000 / 20000 = 25%
 | 
								// Memory Fraction: 5000 / 20000 = 25%
 | 
				
			||||||
			// Node2 Score: 10 - (0.6-0.25)*100 = 65
 | 
								// Node2 Score: MaxNodeScore - (0.6-0.25)*MaxNodeScore = 65
 | 
				
			||||||
			pod:          &v1.Pod{Spec: noResources},
 | 
								pod:          &v1.Pod{Spec: noResources},
 | 
				
			||||||
			nodes:        []*v1.Node{makeNode("machine1", 10000, 20000), makeNode("machine2", 10000, 20000)},
 | 
								nodes:        []*v1.Node{makeNode("machine1", 10000, 20000), makeNode("machine2", 10000, 20000)},
 | 
				
			||||||
			expectedList: []framework.NodeScore{{Name: "machine1", Score: 40}, {Name: "machine2", Score: 65}},
 | 
								expectedList: []framework.NodeScore{{Name: "machine1", Score: 40}, {Name: "machine2", Score: 65}},
 | 
				
			||||||
@@ -288,14 +288,14 @@ func TestNodeResourcesBalancedAllocation(t *testing.T) {
 | 
				
			|||||||
			},
 | 
								},
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores on 0-10 scale
 | 
								// Node1 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Fraction: 6000 / 10000 = 60%
 | 
								// CPU Fraction: 6000 / 10000 = 60%
 | 
				
			||||||
			// Memory Fraction: 5000 / 20000 = 25%
 | 
								// Memory Fraction: 5000 / 20000 = 25%
 | 
				
			||||||
			// Node1 Score: 10 - (0.6-0.25)*100 = 65
 | 
								// Node1 Score: MaxNodeScore - (0.6-0.25)*MaxNodeScore = 65
 | 
				
			||||||
			// Node2 scores on 0-10 scale
 | 
								// Node2 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Fraction: 6000 / 10000 = 60%
 | 
								// CPU Fraction: 6000 / 10000 = 60%
 | 
				
			||||||
			// Memory Fraction: 10000 / 20000 = 50%
 | 
								// Memory Fraction: 10000 / 20000 = 50%
 | 
				
			||||||
			// Node2 Score: 10 - (0.6-0.5)*100 = 9
 | 
								// Node2 Score: MaxNodeScore - (0.6-0.5)*MaxNodeScore = 90
 | 
				
			||||||
			pod:          &v1.Pod{Spec: cpuAndMemory},
 | 
								pod:          &v1.Pod{Spec: cpuAndMemory},
 | 
				
			||||||
			nodes:        []*v1.Node{makeNode("machine1", 10000, 20000), makeNode("machine2", 10000, 20000)},
 | 
								nodes:        []*v1.Node{makeNode("machine1", 10000, 20000), makeNode("machine2", 10000, 20000)},
 | 
				
			||||||
			expectedList: []framework.NodeScore{{Name: "machine1", Score: 65}, {Name: "machine2", Score: 90}},
 | 
								expectedList: []framework.NodeScore{{Name: "machine1", Score: 65}, {Name: "machine2", Score: 90}},
 | 
				
			||||||
@@ -306,14 +306,14 @@ func TestNodeResourcesBalancedAllocation(t *testing.T) {
 | 
				
			|||||||
			},
 | 
								},
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores on 0-10 scale
 | 
								// Node1 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Fraction: 6000 / 10000 = 60%
 | 
								// CPU Fraction: 6000 / 10000 = 60%
 | 
				
			||||||
			// Memory Fraction: 5000 / 20000 = 25%
 | 
								// Memory Fraction: 5000 / 20000 = 25%
 | 
				
			||||||
			// Node1 Score: 10 - (0.6-0.25)*100 = 65
 | 
								// Node1 Score: MaxNodeScore - (0.6-0.25)*MaxNodeScore = 65
 | 
				
			||||||
			// Node2 scores on 0-10 scale
 | 
								// Node2 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Fraction: 6000 / 10000 = 60%
 | 
								// CPU Fraction: 6000 / 10000 = 60%
 | 
				
			||||||
			// Memory Fraction: 10000 / 50000 = 20%
 | 
								// Memory Fraction: 10000 / 50000 = 20%
 | 
				
			||||||
			// Node2 Score: 10 - (0.6-0.2)*100 = 60
 | 
								// Node2 Score: MaxNodeScore - (0.6-0.2)*MaxNodeScore = 60
 | 
				
			||||||
			pod:          &v1.Pod{Spec: cpuAndMemory},
 | 
								pod:          &v1.Pod{Spec: cpuAndMemory},
 | 
				
			||||||
			nodes:        []*v1.Node{makeNode("machine1", 10000, 20000), makeNode("machine2", 10000, 50000)},
 | 
								nodes:        []*v1.Node{makeNode("machine1", 10000, 20000), makeNode("machine2", 10000, 50000)},
 | 
				
			||||||
			expectedList: []framework.NodeScore{{Name: "machine1", Score: 65}, {Name: "machine2", Score: 60}},
 | 
								expectedList: []framework.NodeScore{{Name: "machine1", Score: 65}, {Name: "machine2", Score: 60}},
 | 
				
			||||||
@@ -324,11 +324,11 @@ func TestNodeResourcesBalancedAllocation(t *testing.T) {
 | 
				
			|||||||
			},
 | 
								},
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores on 0-10 scale
 | 
								// Node1 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Fraction: 6000 / 4000 > 100% ==> Score := 0
 | 
								// CPU Fraction: 6000 / 4000 > 100% ==> Score := 0
 | 
				
			||||||
			// Memory Fraction: 0 / 10000 = 0
 | 
								// Memory Fraction: 0 / 10000 = 0
 | 
				
			||||||
			// Node1 Score: 0
 | 
								// Node1 Score: 0
 | 
				
			||||||
			// Node2 scores on 0-10 scale
 | 
								// Node2 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Fraction: 6000 / 4000 > 100% ==> Score := 0
 | 
								// CPU Fraction: 6000 / 4000 > 100% ==> Score := 0
 | 
				
			||||||
			// Memory Fraction 5000 / 10000 = 50%
 | 
								// Memory Fraction 5000 / 10000 = 50%
 | 
				
			||||||
			// Node2 Score: 0
 | 
								// Node2 Score: 0
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -98,27 +98,27 @@ func TestNodeResourcesLeastAllocated(t *testing.T) {
 | 
				
			|||||||
		name         string
 | 
							name         string
 | 
				
			||||||
	}{
 | 
						}{
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores (remaining resources) on 0-10 scale
 | 
								// Node1 scores (remaining resources) on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: ((4000 - 0) *100) / 4000 = 100
 | 
								// CPU Score: ((4000 - 0) * MaxNodeScore) / 4000 = MaxNodeScore
 | 
				
			||||||
			// Memory Score: ((10000 - 0) *100) / 10000 = 100
 | 
								// Memory Score: ((10000 - 0) * MaxNodeScore) / 10000 = MaxNodeScore
 | 
				
			||||||
			// Node1 Score: (100 + 100) / 2 = 100
 | 
								// Node1 Score: (100 + 100) / 2 = 100
 | 
				
			||||||
			// Node2 scores (remaining resources) on 0-10 scale
 | 
								// Node2 scores (remaining resources) on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: ((4000 - 0) *100) / 4000 = 100
 | 
								// CPU Score: ((4000 - 0) * MaxNodeScore) / 4000 = MaxNodeScore
 | 
				
			||||||
			// Memory Score: ((10000 - 0) *10) / 10000 = 100
 | 
								// Memory Score: ((10000 - 0) * MaxNodeScore) / 10000 = MaxNodeScore
 | 
				
			||||||
			// Node2 Score: (100 + 100) / 2 = 100
 | 
								// Node2 Score: (MaxNodeScore + MaxNodeScore) / 2 = MaxNodeScore
 | 
				
			||||||
			pod:          &v1.Pod{Spec: noResources},
 | 
								pod:          &v1.Pod{Spec: noResources},
 | 
				
			||||||
			nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 4000, 10000)},
 | 
								nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 4000, 10000)},
 | 
				
			||||||
			expectedList: []framework.NodeScore{{Name: "machine1", Score: framework.MaxNodeScore}, {Name: "machine2", Score: framework.MaxNodeScore}},
 | 
								expectedList: []framework.NodeScore{{Name: "machine1", Score: framework.MaxNodeScore}, {Name: "machine2", Score: framework.MaxNodeScore}},
 | 
				
			||||||
			name:         "nothing scheduled, nothing requested",
 | 
								name:         "nothing scheduled, nothing requested",
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores on 0-10 scale
 | 
								// Node1 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: ((4000 - 3000) *100) / 4000 = 25
 | 
								// CPU Score: ((4000 - 3000) * MaxNodeScore) / 4000 = 25
 | 
				
			||||||
			// Memory Score: ((10000 - 5000) *100) / 10000 = 50
 | 
								// Memory Score: ((10000 - 5000) * MaxNodeScore) / 10000 = 50
 | 
				
			||||||
			// Node1 Score: (25 + 50) / 2 = 37
 | 
								// Node1 Score: (25 + 50) / 2 = 37
 | 
				
			||||||
			// Node2 scores on 0-10 scale
 | 
								// Node2 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: ((6000 - 3000) *100) / 6000 = 50
 | 
								// CPU Score: ((6000 - 3000) * MaxNodeScore) / 6000 = 50
 | 
				
			||||||
			// Memory Score: ((10000 - 5000) *100) / 10000 = 50
 | 
								// Memory Score: ((10000 - 5000) * MaxNodeScore) / 10000 = 50
 | 
				
			||||||
			// Node2 Score: (50 + 50) / 2 = 50
 | 
								// Node2 Score: (50 + 50) / 2 = 50
 | 
				
			||||||
			pod:          &v1.Pod{Spec: cpuAndMemory},
 | 
								pod:          &v1.Pod{Spec: cpuAndMemory},
 | 
				
			||||||
			nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 6000, 10000)},
 | 
								nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 6000, 10000)},
 | 
				
			||||||
@@ -126,14 +126,14 @@ func TestNodeResourcesLeastAllocated(t *testing.T) {
 | 
				
			|||||||
			name:         "nothing scheduled, resources requested, differently sized machines",
 | 
								name:         "nothing scheduled, resources requested, differently sized machines",
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores on 0-10 scale
 | 
								// Node1 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: ((4000 - 0) *100) / 4000 = 100
 | 
								// CPU Score: ((4000 - 0) * MaxNodeScore) / 4000 = MaxNodeScore
 | 
				
			||||||
			// Memory Score: ((10000 - 0) *100) / 10000 = 100
 | 
								// Memory Score: ((10000 - 0) * MaxNodeScore) / 10000 = MaxNodeScore
 | 
				
			||||||
			// Node1 Score: (100 + 100) / 2 = 100
 | 
								// Node1 Score: (MaxNodeScore + MaxNodeScore) / 2 = MaxNodeScore
 | 
				
			||||||
			// Node2 scores on 0-10 scale
 | 
								// Node2 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: ((4000 - 0) *100) / 4000 = 100
 | 
								// CPU Score: ((4000 - 0) * MaxNodeScore) / 4000 = MaxNodeScore
 | 
				
			||||||
			// Memory Score: ((10000 - 0) *100) / 10000 = 100
 | 
								// Memory Score: ((10000 - 0) * MaxNodeScore) / 10000 = MaxNodeScore
 | 
				
			||||||
			// Node2 Score: (100 + 100) / 2 = 100
 | 
								// Node2 Score: (MaxNodeScore + MaxNodeScore) / 2 = MaxNodeScore
 | 
				
			||||||
			pod:          &v1.Pod{Spec: noResources},
 | 
								pod:          &v1.Pod{Spec: noResources},
 | 
				
			||||||
			nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 4000, 10000)},
 | 
								nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 4000, 10000)},
 | 
				
			||||||
			expectedList: []framework.NodeScore{{Name: "machine1", Score: framework.MaxNodeScore}, {Name: "machine2", Score: framework.MaxNodeScore}},
 | 
								expectedList: []framework.NodeScore{{Name: "machine1", Score: framework.MaxNodeScore}, {Name: "machine2", Score: framework.MaxNodeScore}},
 | 
				
			||||||
@@ -146,13 +146,13 @@ func TestNodeResourcesLeastAllocated(t *testing.T) {
 | 
				
			|||||||
			},
 | 
								},
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores on 0-10 scale
 | 
								// Node1 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: ((10000 - 6000) *100) / 10000 = 40
 | 
								// CPU Score: ((10000 - 6000) * MaxNodeScore) / 10000 = 40
 | 
				
			||||||
			// Memory Score: ((20000 - 0) *100) / 20000 = 100
 | 
								// Memory Score: ((20000 - 0) * MaxNodeScore) / 20000 = MaxNodeScore
 | 
				
			||||||
			// Node1 Score: (40 + 100) / 2 = 70
 | 
								// Node1 Score: (40 + 100) / 2 = 70
 | 
				
			||||||
			// Node2 scores on 0-10 scale
 | 
								// Node2 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: ((10000 - 6000) *100) / 10000 = 40
 | 
								// CPU Score: ((10000 - 6000) * MaxNodeScore) / 10000 = 40
 | 
				
			||||||
			// Memory Score: ((20000 - 5000) *100) / 20000 = 75
 | 
								// Memory Score: ((20000 - 5000) * MaxNodeScore) / 20000 = 75
 | 
				
			||||||
			// Node2 Score: (40 + 75) / 2 = 57
 | 
								// Node2 Score: (40 + 75) / 2 = 57
 | 
				
			||||||
			pod:          &v1.Pod{Spec: noResources},
 | 
								pod:          &v1.Pod{Spec: noResources},
 | 
				
			||||||
			nodes:        []*v1.Node{makeNode("machine1", 10000, 20000), makeNode("machine2", 10000, 20000)},
 | 
								nodes:        []*v1.Node{makeNode("machine1", 10000, 20000), makeNode("machine2", 10000, 20000)},
 | 
				
			||||||
@@ -166,13 +166,13 @@ func TestNodeResourcesLeastAllocated(t *testing.T) {
 | 
				
			|||||||
			},
 | 
								},
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores on 0-10 scale
 | 
								// Node1 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: ((10000 - 6000) *10) / 10000 = 40
 | 
								// CPU Score: ((10000 - 6000) * MaxNodeScore) / 10000 = 40
 | 
				
			||||||
			// Memory Score: ((20000 - 5000) *10) / 20000 = 75
 | 
								// Memory Score: ((20000 - 5000) * MaxNodeScore) / 20000 = 75
 | 
				
			||||||
			// Node1 Score: (40 + 75) / 2 = 57
 | 
								// Node1 Score: (40 + 75) / 2 = 57
 | 
				
			||||||
			// Node2 scores on 0-10 scale
 | 
								// Node2 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: ((10000 - 6000) *100) / 10000 = 40
 | 
								// CPU Score: ((10000 - 6000) * MaxNodeScore) / 10000 = 40
 | 
				
			||||||
			// Memory Score: ((20000 - 10000) *100) / 20000 = 50
 | 
								// Memory Score: ((20000 - 10000) * MaxNodeScore) / 20000 = 50
 | 
				
			||||||
			// Node2 Score: (40 + 50) / 2 = 45
 | 
								// Node2 Score: (40 + 50) / 2 = 45
 | 
				
			||||||
			pod:          &v1.Pod{Spec: cpuAndMemory},
 | 
								pod:          &v1.Pod{Spec: cpuAndMemory},
 | 
				
			||||||
			nodes:        []*v1.Node{makeNode("machine1", 10000, 20000), makeNode("machine2", 10000, 20000)},
 | 
								nodes:        []*v1.Node{makeNode("machine1", 10000, 20000), makeNode("machine2", 10000, 20000)},
 | 
				
			||||||
@@ -184,13 +184,13 @@ func TestNodeResourcesLeastAllocated(t *testing.T) {
 | 
				
			|||||||
			},
 | 
								},
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores on 0-10 scale
 | 
								// Node1 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: ((10000 - 6000) *100) / 10000 = 40
 | 
								// CPU Score: ((10000 - 6000) * MaxNodeScore) / 10000 = 40
 | 
				
			||||||
			// Memory Score: ((20000 - 5000) *100) / 20000 = 75
 | 
								// Memory Score: ((20000 - 5000) * MaxNodeScore) / 20000 = 75
 | 
				
			||||||
			// Node1 Score: (40 + 75) / 2 = 57
 | 
								// Node1 Score: (40 + 75) / 2 = 57
 | 
				
			||||||
			// Node2 scores on 0-10 scale
 | 
								// Node2 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: ((10000 - 6000) *100) / 10000 = 40
 | 
								// CPU Score: ((10000 - 6000) * MaxNodeScore) / 10000 = 40
 | 
				
			||||||
			// Memory Score: ((50000 - 10000) *100) / 50000 = 80
 | 
								// Memory Score: ((50000 - 10000) * MaxNodeScore) / 50000 = 80
 | 
				
			||||||
			// Node2 Score: (40 + 80) / 2 = 60
 | 
								// Node2 Score: (40 + 80) / 2 = 60
 | 
				
			||||||
			pod:          &v1.Pod{Spec: cpuAndMemory},
 | 
								pod:          &v1.Pod{Spec: cpuAndMemory},
 | 
				
			||||||
			nodes:        []*v1.Node{makeNode("machine1", 10000, 20000), makeNode("machine2", 10000, 50000)},
 | 
								nodes:        []*v1.Node{makeNode("machine1", 10000, 20000), makeNode("machine2", 10000, 50000)},
 | 
				
			||||||
@@ -202,13 +202,13 @@ func TestNodeResourcesLeastAllocated(t *testing.T) {
 | 
				
			|||||||
			},
 | 
								},
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores on 0-10 scale
 | 
								// Node1 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: ((4000 - 6000) *100) / 4000 = 0
 | 
								// CPU Score: ((4000 - 6000) * MaxNodeScore) / 4000 = 0
 | 
				
			||||||
			// Memory Score: ((10000 - 0) *100) / 10000 = 100
 | 
								// Memory Score: ((10000 - 0) * MaxNodeScore) / 10000 = MaxNodeScore
 | 
				
			||||||
			// Node1 Score: (0 + 100) / 2 = 50
 | 
								// Node1 Score: (0 + MaxNodeScore) / 2 = 50
 | 
				
			||||||
			// Node2 scores on 0-10 scale
 | 
								// Node2 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: ((4000 - 6000) *100) / 4000 = 0
 | 
								// CPU Score: ((4000 - 6000) * MaxNodeScore) / 4000 = 0
 | 
				
			||||||
			// Memory Score: ((10000 - 5000) *100) / 10000 = 50
 | 
								// Memory Score: ((10000 - 5000) * MaxNodeScore) / 10000 = 50
 | 
				
			||||||
			// Node2 Score: (0 + 50) / 2 = 25
 | 
								// Node2 Score: (0 + 50) / 2 = 25
 | 
				
			||||||
			pod:          &v1.Pod{Spec: cpuOnly},
 | 
								pod:          &v1.Pod{Spec: cpuOnly},
 | 
				
			||||||
			nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 4000, 10000)},
 | 
								nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 4000, 10000)},
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -51,7 +51,7 @@ func (ma *MostAllocated) Score(ctx context.Context, state *framework.CycleState,
 | 
				
			|||||||
	// ma.score favors nodes with most requested resources.
 | 
						// ma.score favors nodes with most requested resources.
 | 
				
			||||||
	// It calculates the percentage of memory and CPU requested by pods scheduled on the node, and prioritizes
 | 
						// It calculates the percentage of memory and CPU requested by pods scheduled on the node, and prioritizes
 | 
				
			||||||
	// based on the maximum of the average of the fraction of requested to capacity.
 | 
						// based on the maximum of the average of the fraction of requested to capacity.
 | 
				
			||||||
	// Details: (cpu(10 * sum(requested) / capacity) + memory(10 * sum(requested) / capacity)) / 2
 | 
						// Details: (cpu(MaxNodeScore * sum(requested) / capacity) + memory(MaxNodeScore * sum(requested) / capacity)) / weightSum
 | 
				
			||||||
	return ma.score(pod, nodeInfo)
 | 
						return ma.score(pod, nodeInfo)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -83,13 +83,11 @@ func mostResourceScorer(requested, allocable resourceToValueMap, includeVolumes
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// The used capacity is calculated on a scale of 0-10
 | 
					// The used capacity is calculated on a scale of 0-MaxNodeScore (MaxNodeScore is
 | 
				
			||||||
// 0 being the lowest priority and 10 being the highest.
 | 
					// constant with value set to 100).
 | 
				
			||||||
 | 
					// 0 being the lowest priority and 100 being the highest.
 | 
				
			||||||
// The more resources are used the higher the score is. This function
 | 
					// The more resources are used the higher the score is. This function
 | 
				
			||||||
// is almost a reversed version of least_requested_priority.calculateUnusedScore
 | 
					// is almost a reversed version of noderesources.leastRequestedScore.
 | 
				
			||||||
// (10 - calculateUnusedScore). The main difference is in rounding. It was added to
 | 
					 | 
				
			||||||
// keep the final formula clean and not to modify the widely used (by users
 | 
					 | 
				
			||||||
// in their default scheduling policies) calculateUsedScore.
 | 
					 | 
				
			||||||
func mostRequestedScore(requested, capacity int64) int64 {
 | 
					func mostRequestedScore(requested, capacity int64) int64 {
 | 
				
			||||||
	if capacity == 0 {
 | 
						if capacity == 0 {
 | 
				
			||||||
		return 0
 | 
							return 0
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -113,13 +113,13 @@ func TestNodeResourcesMostAllocated(t *testing.T) {
 | 
				
			|||||||
		name         string
 | 
							name         string
 | 
				
			||||||
	}{
 | 
						}{
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores (used resources) on 0-10 scale
 | 
								// Node1 scores (used resources) on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: (0 * 100)  / 4000 = 0
 | 
								// CPU Score: (0 * MaxNodeScore)  / 4000 = 0
 | 
				
			||||||
			// Memory Score: (0 * 100) / 10000 = 0
 | 
								// Memory Score: (0 * MaxNodeScore) / 10000 = 0
 | 
				
			||||||
			// Node1 Score: (0 + 0) / 2 = 0
 | 
								// Node1 Score: (0 + 0) / 2 = 0
 | 
				
			||||||
			// Node2 scores (used resources) on 0-10 scale
 | 
								// Node2 scores (used resources) on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: (0 * 100) / 4000 = 0
 | 
								// CPU Score: (0 * MaxNodeScore) / 4000 = 0
 | 
				
			||||||
			// Memory Score: (0 * 100) / 10000 = 0
 | 
								// Memory Score: (0 * MaxNodeScore) / 10000 = 0
 | 
				
			||||||
			// Node2 Score: (0 + 0) / 2 = 0
 | 
								// Node2 Score: (0 + 0) / 2 = 0
 | 
				
			||||||
			pod:          &v1.Pod{Spec: noResources},
 | 
								pod:          &v1.Pod{Spec: noResources},
 | 
				
			||||||
			nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 4000, 10000)},
 | 
								nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 4000, 10000)},
 | 
				
			||||||
@@ -127,13 +127,13 @@ func TestNodeResourcesMostAllocated(t *testing.T) {
 | 
				
			|||||||
			name:         "nothing scheduled, nothing requested",
 | 
								name:         "nothing scheduled, nothing requested",
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores on 0-10 scale
 | 
								// Node1 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: (3000 * 100) / 4000 = 75
 | 
								// CPU Score: (3000 * MaxNodeScore) / 4000 = 75
 | 
				
			||||||
			// Memory Score: (5000 * 100) / 10000 = 50
 | 
								// Memory Score: (5000 * MaxNodeScore) / 10000 = 50
 | 
				
			||||||
			// Node1 Score: (75 + 50) / 2 = 6
 | 
								// Node1 Score: (75 + 50) / 2 = 6
 | 
				
			||||||
			// Node2 scores on 0-10 scale
 | 
								// Node2 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: (3000 * 100) / 6000 = 50
 | 
								// CPU Score: (3000 * MaxNodeScore) / 6000 = 50
 | 
				
			||||||
			// Memory Score: (5000 * 100) / 10000 = 50
 | 
								// Memory Score: (5000 * MaxNodeScore) / 10000 = 50
 | 
				
			||||||
			// Node2 Score: (50 + 50) / 2 = 50
 | 
								// Node2 Score: (50 + 50) / 2 = 50
 | 
				
			||||||
			pod:          &v1.Pod{Spec: cpuAndMemory},
 | 
								pod:          &v1.Pod{Spec: cpuAndMemory},
 | 
				
			||||||
			nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 6000, 10000)},
 | 
								nodes:        []*v1.Node{makeNode("machine1", 4000, 10000), makeNode("machine2", 6000, 10000)},
 | 
				
			||||||
@@ -141,13 +141,13 @@ func TestNodeResourcesMostAllocated(t *testing.T) {
 | 
				
			|||||||
			name:         "nothing scheduled, resources requested, differently sized machines",
 | 
								name:         "nothing scheduled, resources requested, differently sized machines",
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores on 0-10 scale
 | 
								// Node1 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: (6000 * 100) / 10000 = 60
 | 
								// CPU Score: (6000 * MaxNodeScore) / 10000 = 60
 | 
				
			||||||
			// Memory Score: (0 * 100) / 20000 = 100
 | 
								// Memory Score: (0 * MaxNodeScore) / 20000 = 0
 | 
				
			||||||
			// Node1 Score: (60 + 0) / 2 = 30
 | 
								// Node1 Score: (60 + 0) / 2 = 30
 | 
				
			||||||
			// Node2 scores on 0-10 scale
 | 
								// Node2 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: (6000 * 100) / 10000 = 60
 | 
								// CPU Score: (6000 * MaxNodeScore) / 10000 = 60
 | 
				
			||||||
			// Memory Score: (5000 * 100) / 20000 = 25
 | 
								// Memory Score: (5000 * MaxNodeScore) / 20000 = 25
 | 
				
			||||||
			// Node2 Score: (60 + 25) / 2 = 42
 | 
								// Node2 Score: (60 + 25) / 2 = 42
 | 
				
			||||||
			pod:          &v1.Pod{Spec: noResources},
 | 
								pod:          &v1.Pod{Spec: noResources},
 | 
				
			||||||
			nodes:        []*v1.Node{makeNode("machine1", 10000, 20000), makeNode("machine2", 10000, 20000)},
 | 
								nodes:        []*v1.Node{makeNode("machine1", 10000, 20000), makeNode("machine2", 10000, 20000)},
 | 
				
			||||||
@@ -161,13 +161,13 @@ func TestNodeResourcesMostAllocated(t *testing.T) {
 | 
				
			|||||||
			},
 | 
								},
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores on 0-10 scale
 | 
								// Node1 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: (6000 * 100) / 10000 = 60
 | 
								// CPU Score: (6000 * MaxNodeScore) / 10000 = 60
 | 
				
			||||||
			// Memory Score: (5000 * 100) / 20000 = 25
 | 
								// Memory Score: (5000 * MaxNodeScore) / 20000 = 25
 | 
				
			||||||
			// Node1 Score: (60 + 25) / 2 = 42
 | 
								// Node1 Score: (60 + 25) / 2 = 42
 | 
				
			||||||
			// Node2 scores on 0-10 scale
 | 
								// Node2 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: (6000 * 100) / 10000 = 60
 | 
								// CPU Score: (6000 * MaxNodeScore) / 10000 = 60
 | 
				
			||||||
			// Memory Score: (10000 * 100) / 20000 = 50
 | 
								// Memory Score: (10000 * MaxNodeScore) / 20000 = 50
 | 
				
			||||||
			// Node2 Score: (60 + 50) / 2 = 55
 | 
								// Node2 Score: (60 + 50) / 2 = 55
 | 
				
			||||||
			pod:          &v1.Pod{Spec: cpuAndMemory},
 | 
								pod:          &v1.Pod{Spec: cpuAndMemory},
 | 
				
			||||||
			nodes:        []*v1.Node{makeNode("machine1", 10000, 20000), makeNode("machine2", 10000, 20000)},
 | 
								nodes:        []*v1.Node{makeNode("machine1", 10000, 20000), makeNode("machine2", 10000, 20000)},
 | 
				
			||||||
@@ -179,12 +179,12 @@ func TestNodeResourcesMostAllocated(t *testing.T) {
 | 
				
			|||||||
			},
 | 
								},
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			// Node1 scores on 0-10 scale
 | 
								// Node1 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: 5000 > 4000 return 0
 | 
								// CPU Score: 5000 > 4000 return 0
 | 
				
			||||||
			// Memory Score: (9000 * 100) / 10000 = 90
 | 
								// Memory Score: (9000 * MaxNodeScore) / 10000 = 90
 | 
				
			||||||
			// Node1 Score: (0 + 90) / 2 = 45
 | 
								// Node1 Score: (0 + 90) / 2 = 45
 | 
				
			||||||
			// Node2 scores on 0-10 scale
 | 
								// Node2 scores on 0-MaxNodeScore scale
 | 
				
			||||||
			// CPU Score: (5000 * 100) / 10000 = 50
 | 
								// CPU Score: (5000 * MaxNodeScore) / 10000 = 50
 | 
				
			||||||
			// Memory Score: 9000 > 8000 return 0
 | 
								// Memory Score: 9000 > 8000 return 0
 | 
				
			||||||
			// Node2 Score: (50 + 0) / 2 = 25
 | 
								// Node2 Score: (50 + 0) / 2 = 25
 | 
				
			||||||
			pod:          &v1.Pod{Spec: bigCPUAndMemory},
 | 
								pod:          &v1.Pod{Spec: bigCPUAndMemory},
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -267,16 +267,16 @@ func TestResourceBinPackingSingleExtended(t *testing.T) {
 | 
				
			|||||||
	}{
 | 
						}{
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			//  Node1 scores (used resources) on 0-10 scale
 | 
								//  Node1 scores (used resources) on 0-MaxNodeScore scale
 | 
				
			||||||
			//  Node1 Score:
 | 
								//  Node1 Score:
 | 
				
			||||||
			//  rawScoringFunction(used + requested / available)
 | 
								//  rawScoringFunction(used + requested / available)
 | 
				
			||||||
			//  resourceScoringFunction((0+0),8)
 | 
								//  resourceScoringFunction((0+0),8)
 | 
				
			||||||
			//      = 100 - (8-0)*(100/8) = 0 = rawScoringFunction(0)
 | 
								//      = maxUtilization - (8-0)*(maxUtilization/8) = 0 = rawScoringFunction(0)
 | 
				
			||||||
			//  Node1 Score: 0
 | 
								//  Node1 Score: 0
 | 
				
			||||||
			//  Node2 scores (used resources) on 0-10 scale
 | 
								//  Node2 scores (used resources) on 0-MaxNodeScore scale
 | 
				
			||||||
			//  rawScoringFunction(used + requested / available)
 | 
								//  rawScoringFunction(used + requested / available)
 | 
				
			||||||
			//  resourceScoringFunction((0+0),4)
 | 
								//  resourceScoringFunction((0+0),4)
 | 
				
			||||||
			//      = 100 - (4-0)*(100/4) = 0 = rawScoringFunction(0)
 | 
								//      = maxUtilization - (4-0)*(maxUtilization/4) = 0 = rawScoringFunction(0)
 | 
				
			||||||
			//  Node2 Score: 0
 | 
								//  Node2 Score: 0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			pod:          &v1.Pod{Spec: noResources},
 | 
								pod:          &v1.Pod{Spec: noResources},
 | 
				
			||||||
@@ -287,16 +287,16 @@ func TestResourceBinPackingSingleExtended(t *testing.T) {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			// Node1 scores (used resources) on 0-10 scale
 | 
								// Node1 scores (used resources) on 0-MaxNodeScore scale
 | 
				
			||||||
			// Node1 Score:
 | 
								// Node1 Score:
 | 
				
			||||||
			// rawScoringFunction(used + requested / available)
 | 
								// rawScoringFunction(used + requested / available)
 | 
				
			||||||
			// resourceScoringFunction((0+2),8)
 | 
								// resourceScoringFunction((0+2),8)
 | 
				
			||||||
			//  = 100 - (8-2)*(100/8) = 25 = rawScoringFunction(25)
 | 
								//  = maxUtilization - (8-2)*(maxUtilization/8) = 25 = rawScoringFunction(25)
 | 
				
			||||||
			// Node1 Score: 2
 | 
								// Node1 Score: 2
 | 
				
			||||||
			// Node2 scores (used resources) on 0-10 scale
 | 
								// Node2 scores (used resources) on 0-MaxNodeScore scale
 | 
				
			||||||
			// rawScoringFunction(used + requested / available)
 | 
								// rawScoringFunction(used + requested / available)
 | 
				
			||||||
			// resourceScoringFunction((0+2),4)
 | 
								// resourceScoringFunction((0+2),4)
 | 
				
			||||||
			//  = 100 - (4-2)*(100/4) = 50 = rawScoringFunction(50)
 | 
								//  = maxUtilization - (4-2)*(maxUtilization/4) = 50 = rawScoringFunction(50)
 | 
				
			||||||
			// Node2 Score: 5
 | 
								// Node2 Score: 5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			pod:          &v1.Pod{Spec: extendedResourcePod1},
 | 
								pod:          &v1.Pod{Spec: extendedResourcePod1},
 | 
				
			||||||
@@ -310,16 +310,16 @@ func TestResourceBinPackingSingleExtended(t *testing.T) {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			// Node1 scores (used resources) on 0-10 scale
 | 
								// Node1 scores (used resources) on 0-MaxNodeScore scale
 | 
				
			||||||
			// Node1 Score:
 | 
								// Node1 Score:
 | 
				
			||||||
			// rawScoringFunction(used + requested / available)
 | 
								// rawScoringFunction(used + requested / available)
 | 
				
			||||||
			// resourceScoringFunction((0+2),8)
 | 
								// resourceScoringFunction((0+2),8)
 | 
				
			||||||
			//  = 100 - (8-2)*(100/8) = 25 =rawScoringFunction(25)
 | 
								//  = maxUtilization - (8-2)*(maxUtilization/8) = 25 = rawScoringFunction(25)
 | 
				
			||||||
			// Node1 Score: 2
 | 
								// Node1 Score: 2
 | 
				
			||||||
			// Node2 scores (used resources) on 0-10 scale
 | 
								// Node2 scores (used resources) on 0-MaxNodeScore scale
 | 
				
			||||||
			// rawScoringFunction(used + requested / available)
 | 
								// rawScoringFunction(used + requested / available)
 | 
				
			||||||
			// resourceScoringFunction((2+2),4)
 | 
								// resourceScoringFunction((2+2),4)
 | 
				
			||||||
			//  = 100 - (4-4)*(100/4) = 100 = rawScoringFunction(100)
 | 
								//  = maxUtilization - (4-4)*(maxUtilization/4) = maxUtilization = rawScoringFunction(maxUtilization)
 | 
				
			||||||
			// Node2 Score: 10
 | 
								// Node2 Score: 10
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			pod:          &v1.Pod{Spec: extendedResourcePod1},
 | 
								pod:          &v1.Pod{Spec: extendedResourcePod1},
 | 
				
			||||||
@@ -333,16 +333,16 @@ func TestResourceBinPackingSingleExtended(t *testing.T) {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			// Node1 scores (used resources) on 0-10 scale
 | 
								// Node1 scores (used resources) on 0-MaxNodeScore scale
 | 
				
			||||||
			// Node1 Score:
 | 
								// Node1 Score:
 | 
				
			||||||
			// rawScoringFunction(used + requested / available)
 | 
								// rawScoringFunction(used + requested / available)
 | 
				
			||||||
			// resourceScoringFunction((0+4),8)
 | 
								// resourceScoringFunction((0+4),8)
 | 
				
			||||||
			//  = 100 - (8-4)*(100/8) = 50 = rawScoringFunction(50)
 | 
								//  = maxUtilization - (8-4)*(maxUtilization/8) = 50 = rawScoringFunction(50)
 | 
				
			||||||
			// Node1 Score: 5
 | 
								// Node1 Score: 5
 | 
				
			||||||
			// Node2 scores (used resources) on 0-10 scale
 | 
								// Node2 scores (used resources) on 0-MaxNodeScore scale
 | 
				
			||||||
			// rawScoringFunction(used + requested / available)
 | 
								// rawScoringFunction(used + requested / available)
 | 
				
			||||||
			// resourceScoringFunction((0+4),4)
 | 
								// resourceScoringFunction((0+4),4)
 | 
				
			||||||
			//  = 100 - (4-4)*(100/4) = 100 = rawScoringFunction(100)
 | 
								//  = maxUtilization - (4-4)*(maxUtilization/4) = maxUtilization = rawScoringFunction(maxUtilization)
 | 
				
			||||||
			// Node2 Score: 10
 | 
								// Node2 Score: 10
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			pod:          &v1.Pod{Spec: extendedResourcePod2},
 | 
								pod:          &v1.Pod{Spec: extendedResourcePod2},
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user