1 / 41

Server Scheduling in the L p norm

Server Scheduling in the L p norm. Nikhil Bansal (CMU) Kirk Pruhs (Univ. of Pittsburgh). Scheduling. Provide service such that users are satisfied. Motivation. Single Machine Arbitrary arrival or release time ( r j ) Arbitrary processing requirement or size ( p j ). t=0 (r 1 ). r 2.

nona
Download Presentation

Server Scheduling in the L p norm

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Server Scheduling in the Lp norm Nikhil Bansal (CMU) Kirk Pruhs (Univ. of Pittsburgh)

  2. Scheduling Provide service such that users are satisfied

  3. Motivation Single Machine Arbitrary arrival or release time ( rj) Arbitrary processing requirement or size ( pj) t=0 (r1) r2 r3

  4. Motivation Single Machine Arbitrary arrival or release time ( rj) Arbitrary processing requirement or size ( pj) t=0 (r1) r2 r3 c1 c2 c3 Job 1 preempted

  5. Flow Time Completion time: cj Flow time: fj = cj-rj (time user waits) t=0 (r1) r2 r3 c1 c2 c3 Flow Time of Job 1

  6. Flow Time Completion time: cj Flow time: fj = cj-rj (time user waits) t=0 (r1) r2 r3 c1 c2 c3 Flow Time of Job 3

  7. Stretch Stretch (i) = Flow time (i) / Size (i) [Bender Chakrabarti Muthukrishnan’98] Jobs willing to tolerate flow time proportional to size Also known as normalized flow time Each job contributes equally

  8. Known Results Minimize total flow time (i fi) [L1 norm] Optimal Online algorithm: Work on job with smallest remaining proc. time (SRPT) SRPT is 2 – competitive for total stretch [Gehrke, Muthukrishnan, Rajaraman, Shaheen’99] Concern: Big jobs could be stuck! Starvation! Another end: Minimize maximum flow time [L1 norm] First Come First Served (FCFS) is optimal But bad average performance [Smalls stuck behind big]

  9. Balancing average and maximum Lp norms: Penalize outliers, good average performance Online algorithms for minimizing • Flow time (i.e. (j fjp)1/p) • Stretch (i.e. (j sjp)1/p) Lp norms, previously studied: Load balancing [Awerbuch Azar Grove+ ’95, Alon Azar Woeginger Yadid ’97, Avidor Azar Sgall ’01] Completion time scheduling [Epstein,Sgall’99]

  10. Lower Bound SRPT, FCFS optimal algorithms for p=1, 1 Nono(1) competitive randomized alg for Lp norms of flow time and stretch, for 1<p<1 Size L Suppose p=2 L3 jobs of size 1 Online: Cost of big (L3)2 = L6 Opt: L3 Smalls delayed by L= O(L5) By time L3 , If do not finish size L job, bad!

  11. Lower Bound SRPT, FCFS optimal algorithms for p=1, 1 Nono(1) competitive randomized alg for Lp norms of flow time and stretch, for 1<p<1 Optional Stream of jobs Size L L3 jobs of size 1 L5 jobs of size 1/L2 By time L3 , If do not finish size L job, bad!

  12. Results Resource Augmentation:[Kalyanasundaram, Pruhs 95] Online has more resources s-speed, c-competitive maxI Online(I,s) / Opt(I,1) · c Thm: SRPT, SJF (Shortest Job First) are 1+ speed O(1/) competitive No starvation unless close to peak capacity

  13. Interpreting Resource Augmentation Performance Optimal Load

  14. Interpreting Resource Augmentation Online Performance Optimal Load

  15. Proof Sketch Lp norm of flow time as ‘weighted’ Flow Time problem Age(j,t) = 0 if t<rj or t>cj t-rj if rj < t < cj Observation: fj2/2 = t age(j,t) j fj2 /2= tj: alive at time t age(j,t) Proof idea: Show, at all times total age of alive jobs < O(1/)¢ total age under Opt

  16. Proof Idea If job J of size x delayed for t units under SJF Then either, • Had lot of work of size < x before arrival of J • Lot of work arriving continuously since J arrived. In either case, Opt can be shown to have sufficiently many“old’’ unfinished jobs,

  17. Non-Clairvoyant Scheduling Non-Clairvoyant Model [Motwani Phillips Torng ’94] Scheduler does not know size of a job Learns size only when job finishes. Cannot do things like Shortest Job First, SRPT What can we do? FCFS, Round Robin (time-sharing), …

  18. Measuring Performance Resource Augmentation: s-speed, c-competitive Online non-clairvoyant (s,I) Opt offline clairvoyant (1,I) Max I · c

  19. The Algorithm (MLF) Multi-Level Feedback (MLF): Used in Windows NT, Unix Levels L0,L1,L2,… job enters L0 first In Li, receive 2i amount of work, then promoted to Li+1 Work on level i, iff no job in level 0 .. i-1 L2 L1 L0

  20. Previous Results (Non-Clairvoyant) L1 norm of Flow Time: MLF: 1+ speed, O(1/) competitive [Kalyanasundaram, Pruhs ’95] L1 norm of Stretch: MLF: 1+ speed, O(1/4 log2 B) competitive [B., Dhamdhere, Konemann, Sinha’ 03] Any algorithm is 1+ speed (log B/) competitive B = ratio of maximum to minimum job size

  21. Our Results MLF is 1+ speed , O(1/4) competitive for all norms of flow time MLF is 1+ speed, O(1/4 log2 B) competitive for all norms of stretch

  22. Analysis Generic technique: reduce MLF to SJF (Shortest Job First) Reduces a non-clairvoyant problem into a clairvoyant one.

  23. Final Result Round Robin: At any time, share processor equally Considered to be fair (each job treated equally) But not good according to the Lp norm criteria Round Robin is not 1+ speed no(1) competitive (for sufficiently small )

  24. Open Problems 1) Offline case totally open NP-Hard? Non-trivial approximation algorithms? 2) Multiple machines 3) Other notions to deal with tradeoff between average vs. max performance

  25. Thank You!

  26. An example Size L Goal: Minimize  fi2 (i.e. p=2) ……… a job of size 1 arrives for n time units If n small ( < L2), work on the small jobs If n big ( > L2), at time L2, shift to finish the big job Good algorithm: A combination of SRPT + FCFS

  27. MLF 15 7 3 1

  28. MLF 15 7 3 1

  29. MLF 15 7 3 1

  30. MLF 15 7 7 3 3 1 1

  31. MLF 15 7 7 3 3 1 1

  32. MLF 15 7 7 3 3 1 1

  33. MLF 15 7 7 3 3 1 1

  34. MLF 15 7 7 3 3 1 1

  35. Connection between MLF and SJF Instance J : 2i-1 Instance J’ : 1,2,4,…,2i-1 15 7 J J’ 3 1 2 4 8 1

  36. MLF and SJF Instance J : 2i-1 Instance J’ : 1,2,4,…,2i-1 15 7 3 1 2 4 8 1

  37. MLF and SJF Instance J : 2i-1 Instance J’ : 1,2,4,…,2i-1 15 7 3 1 2 4 8 1

  38. MLF and SJF Instance J : 2i-1 Instance J’ : 1,2,4,…,2i-1 15 7 7 3 3 1 1 2 4 8 2 4 1 1

  39. MLF and SJF MLF works on smallest level SJF works on smallest job 15 MLF works on a job in level i  SJF works on 2i size copy of same job 7 7 3 3 1 1 2 4 8 2 4 1 1

  40. MLF and SJF MLF works on smallest level SJF works on smallest job 15 MLF works on a job in level i  SJF works on 2i size copy of same job 7 7 3 3 1 1 2 4 8 2 4 1 1

  41. Analysis Idea 2 Main ideas: 1) MLF(J) can be viewed as SJF (J’) 2) We know that SJF(J’) ¼ Opt(J’), so MLF(J) ¼ Opt(J’) previous clairvoyant result Opt(J) Fairly general technique, usually allows us to reduce a non-clairvoyant problem into a clairvoyant one.

More Related