Details
-
Task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
Twitter Aurora Q2'15 Sprint 1
-
5
Description
While AURORA-1158 makes the preemptor asynchronous and helps scheduling loop performance, it loses some preemption efficiency due to adapting the original algorithm to work asynchronously:
- Preemptor repeatedly searches for preemption slots with the same ClusterState increasing the probability of victim collisions.
- Slave/offer/resource mappings are redundantly recomputed for every pending task slot search.
- Pending tasks are repeatedly sized up against every slave (as opposed to the other way around) making internal loop optimizations more expensive (i.e. pending task count is expected to be << slave count under normal conditions).