You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -137,8 +139,8 @@ func (e *BinpackingNodeEstimator) Estimate(
137
139
}
138
140
139
141
ifnewNodesAvailable {
140
-
// Since fastpath binpacking adds just one node to the snapshot, it will cause unaccurate simulations on subsequent loops, therefore we only use it on the last group
// Since fastpath binpacking adds just one node to the snapshot, it will cause inaccurate simulations on subsequent loops, therefore we only use it on the last group
// Fastpath assumes that once a pod failed to schedule on a node, it will never be possible to schedule any more pods on this node.
415
+
// This assumption is not correct in cases of topology spread constraints.
416
+
// Fastpath also assumes that if it was able to schedule pods on a new node, it will be able to then schedule an equal amount of pods on an additional identical new node,
417
+
// which isn't correct in cases of zonal/regional pod anti affinity.
// determineBestPEGToFastpath returns the index of the pod equivalence group that would benefit the most from fastpath binpacking (= largest expected number of (nodes * pods))
429
-
// returns -1 if it wasn't possible to determine such group
426
+
// returns -1 if none of the groups support fastpath binpacking
430
427
funcdetermineBestPEGToFastpath(podsEquivalenceGroups []PodEquivalenceGroup, nodeTemplate*framework.NodeInfo) int {
0 commit comments