Red Hat Bugzilla – Bug 1014696
optimize scheduling for speed
Last modified: 2016-02-10 15:13:32 EST
Since scheduling process is synchronized, and can be costly when there are numerous concurrent pending requests, add to the cluster an 'optimize for speed' (vs utilization) ability, that should be able to skip weighing process in case there are more than X requests pending to be scheduled, and let the load balancing process to balance the cluster in a lazy manner.
Please provide information for reproducing process.
(In reply to Artyom from comment #1)
> Please provide information for reproducing process.
Added a cluster configuration (optimize for speed) that allows to skip scheduling weights, in-case there are more than X request pending on the scheduler (X = config.SpeedOptimizationSchedulingThreshold). this was added to shorter scheduling processes on a loaded environment. No weights means that one of the host (and not the preferable) will be selected for scheduling, and the load balancer should balance the cluster later on.
To test it, I'd reduce the threadhold to a lower number, and have an external module that takes time (sleep can do the trick). Then run several run vm commands (in parallel)from the REST API. The scheduling request should pile up, and when there are X (threshold) pending, the weight part will be skipped.
Closing - RHEV 3.3 Released