200 likes | 364 Views
Fairness in Speed Scaling Design. Maryam Elahi bmelahi@ucalgary.ca. Joint work with: Carey Williamson and Philipp Woelfel. Locks. Scheduling. CPUs. Databases. Fixed Service Rates. Datacenters. Arrival Rate ( λ ). Internet. Requests (Jobs). Routers. Shared Resource (server).
E N D
Fairness in Speed Scaling Design Maryam Elahi bmelahi@ucalgary.ca Joint work with: Carey Williamson and Philipp Woelfel
Locks Scheduling CPUs Databases Fixed Service Rates Datacenters Arrival Rate (λ) Internet Requests (Jobs) Routers Shared Resource (server) Queue And more… • Sharing resources • Maximize efficiency • Minimize cost
The Decision • Scheduler: • Which job to serve? • Preemptive • Non-preemptive • Goal(s): • 1: Minimize response time Simple Model ? M/M/1
FCFS PS Mean Response Time 0 0.25 0.5 0.75 System Load Schedulers • FCFS: First-Come-First-Served • PS: Processor Sharing • SRPT: Shortest-Remaining-Processing-Time • ... SRPT SRPT is proved optimal, but in practice often PS is used.
Other Goals? • Goal(s): • 1: Minimize response time Other QoS: • 2: Fairness • 3: Robustness • … • Optimizes response time • Is it fair to large jobs? • What is fair? SRPT
Justification • Aristotle's notion of fairness • Treat like cases alike • Treated different cases differently, in proportion to their differences Response times should be proportional to job sizes E[T(x)]/x should be constant T(x): Response Time of a job with size x Policy P is fair if: [Wierman et al. 2003] Normalized response time or slowdown
E[T(x)] / x x Fairness of Schedulers • PS: Always Fair • FCFS: Always Unfair • SRPT: Sometimes Fair • ... • Fair and Optimal? SRPT High enough load E[T(x)] / x PS FCFS x PS Light load SRPT
Fair and optimal? • FSP: Fair Sojourn Protocol [Friedman, et al. 2003] • Implement SRPT on the PS remaining times • Slowdown: never worse than PS • Mean response time: close to that of SRPT • Compute the completion time under virtual PS • Order the jobs based on their virtual completion times • Execute the job with the earliest PS completion time SRPT PS E[T(x)] / x FSP x
The Decisions • Scheduler: • Which job to serve? • What speedto use? • Dynamic speed scaling • Gated-static (shut-down) • Goal(s): • 1: Minimize response time (T) • 2: Minimize energy usage (E) Adjustable Service Rates ? P(s) = sα Power Speed
The tradeoff • Combined Goal: Linear combination of the goals: • Other objectives considered: • Minimize energy for jobs with deadlines • Minimize response time subject to energy budget • response-time x energy How much reduction in response time justifies using one extra joule β: cost of energy energy response-time
Dynamic speed scaling P(s) = sα n: jobs in the system Which job to serve? What speed? Job scheduling SRPT • Speed Scaling Policy + ? [Bansal et al. 2009]: 3-competitive for arbitrary power function
Fairness and speed scaling [Andrew et al. 2010]: Jobs that run when the queue is big, run faster Biased towards big jobs Biased towards small jobs FCFS SRPT PS FSP Treats all the same ?
Fairness and speed scaling [Andrew et al. 2010]: - For PS with speed scaling, stays constant. - Dynamic Speed Scaling magnifies unfairness under SRPT and non-preemptive policies like FCFS. Is Slowdown of PS still the right criterion for fairness?
SIMULATION study • Discrete event simulator written in C++ • Scheduling policies: FCFS, PS, SRPT, FSP • Speed Scaling: • Workload: • Poisson Arrival: rate λ • Exponentially distributed job sizes: rate μ
Conclusions FSP with speed scaling shows better fairness behavior in comparison to speed scaled SRPT The definition of fairness for scheduling with speed scaling requires further investigations
Questions? Thank you!