Online optimization of max stretch on clusters Erik Saule , Doruk - - PowerPoint PPT Presentation

online optimization of max stretch on clusters
SMART_READER_LITE
LIVE PREVIEW

Online optimization of max stretch on clusters Erik Saule , Doruk - - PowerPoint PPT Presentation

Online optimization of max stretch on clusters Erik Saule , Doruk Bozdag, Umit Catalyurek Department of Biomedical Informatics, The Ohio State University { esaule,bozdagd,umit } @bmi.osu.edu Scheduling in Aussois 2010 Supported by the U.S. DOE,


slide-1
SLIDE 1

Online optimization of max stretch on clusters

Erik Saule, Doruk Bozdag, Umit Catalyurek

Department of Biomedical Informatics, The Ohio State University {esaule,bozdagd,umit}@bmi.osu.edu

Scheduling in Aussois 2010

Supported by the U.S. DOE, the U.S. National Science Foundation and the Ohio Supercomputing Center Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters :: 1 / 25

slide-2
SLIDE 2

Outline

1

Problem Definition The max stretch objective What’s known

2

Approximation Results Counter Examples First-Come First-Serve DASEDF Summing up

3

Resource Augmentation Faster Machines More Machines

4

Experimental Validation

5

Conclusion

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters :: 2 / 25

slide-3
SLIDE 3

The Pm | ri, pi, online | max Si problem

Cluster scheduling

A cluster accepts jobs submitted over time. The jobs are independent and uses a single machine. No preemption is allowed.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Problem Definition::The max stretch objective 3 / 25

slide-4
SLIDE 4

The Pm | ri, pi, online | max Si problem

Cluster scheduling

A cluster accepts jobs submitted over time. The jobs are independent and uses a single machine. No preemption is allowed.

The flow time index

The flow-time Fi = Ci − ri is the classical choice in cluster scheduling. But it is unfair for small jobs since a 10-hours job waiting for an hour as the same weight as a 10-minutes job waiting for an hour.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Problem Definition::The max stretch objective 3 / 25

slide-5
SLIDE 5

The Pm | ri, pi, online | max Si problem

Cluster scheduling

A cluster accepts jobs submitted over time. The jobs are independent and uses a single machine. No preemption is allowed.

The flow time index

The flow-time Fi = Ci − ri is the classical choice in cluster scheduling. But it is unfair for small jobs since a 10-hours job waiting for an hour as the same weight as a 10-minutes job waiting for an hour.

The stretch performance index

The stretch Si = Ci−ri

pi

normalizes flow-time and corrects the unfairness of flow-time. But makes the scheduling way more difficult. ∆ denotes the ratio max pi

min pi .

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Problem Definition::The max stretch objective 3 / 25

slide-6
SLIDE 6

Previous results

Theorem

1 | ri, pi | max Si is NP-Complete in the strong sense [BCM98].

Theorem

There is no Ω(n1−ǫ) approximation algorithm for 1 | ri, pi | max Si for constant ǫ unless P = NP [BCM98].

Theorem

1 | ri, pi, online, pmpt | max Si can not be approximated within

√ 2−1

2

[LSV08].

Theorem

First-Come First-Serve is a ∆-approximation of 1 | ri, pi, online, pmpt | max Si [LSV08].

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Problem Definition::What’s known 4 / 25

slide-7
SLIDE 7

Outline of the Talk

1

Problem Definition The max stretch objective What’s known

2

Approximation Results Counter Examples First-Come First-Serve DASEDF Summing up

3

Resource Augmentation Faster Machines More Machines

4

Experimental Validation

5

Conclusion

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results:: 5 / 25

slide-8
SLIDE 8

The online one machine case

Theorem

1 | ri, pi, online | max Si can not be approximated within 1+∆

2 .

  • Proof. (the adversary technique).

A large task enters in the system.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::Counter Examples 6 / 25

slide-9
SLIDE 9

The online one machine case

Theorem

1 | ri, pi, online | max Si can not be approximated within 1+∆

2 .

  • Proof. (the adversary technique).

If it is scheduled immediately, a small task is sent.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::Counter Examples 6 / 25

slide-10
SLIDE 10

The online one machine case

Theorem

1 | ri, pi, online | max Si can not be approximated within 1+∆

2 .

  • Proof. (the adversary technique).

It suffers a large delay (and an unbounded stretch).

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::Counter Examples 6 / 25

slide-11
SLIDE 11

The online one machine case

Theorem

1 | ri, pi, online | max Si can not be approximated within 1+∆

2 .

  • Proof. (the adversary technique).

If the large task is scheduled later, a small task is sent accordingly.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::Counter Examples 6 / 25

slide-12
SLIDE 12

The online one machine case

Theorem

1 | ri, pi, online | max Si can not be approximated within 1+∆

2 .

  • Proof. (the adversary technique).

It suffers a large delay (and an unbounded stretch).

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::Counter Examples 6 / 25

slide-13
SLIDE 13

The online one machine case

Theorem

1 | ri, pi, online | max Si can not be approximated within 1+∆

2 .

  • Proof. (the adversary technique).

It suffers a large delay (and an unbounded stretch). The optimal stretch is always less than 2 and the schedule stretch is always 1 + ∆.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::Counter Examples 6 / 25

slide-14
SLIDE 14

The online m machines case

Theorem

Pm | ri, pi, online | max Si can not be approximated within

1+

∆ m+1

2

.

Proof.

∆ m+1 Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::Counter Examples 7 / 25

slide-15
SLIDE 15

First-Come First-Serve on one machine

Theorem ([LSV08])

FCFS is a ∆-approximation algorithm for 1|ri, pi, online| max Si.

Proof.

Optimal FCFS rl Ci j i i

If optimal has a better stretch for a task (red) then one of the task scheduled between rl and Ci (the blue tasks) will complete after Ci (green). S∗

j = C ∗

j −rj

pj

≥ Ci−ri

pj

= Ci−ri

pi pi pj = Si pi pj Si S∗

j ≤ pj

pi ≤ ∆

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::First-Come First-Serve 8 / 25

slide-16
SLIDE 16

First-Come First-Serve on m machines

Theorem

FCFS is a ∆ + (1 − 1

m)(∆ + 1)-approximation algorithm for

Pm|ri, pi, online|maxSi.

Proof.

∆ (1 − 1

m)

(1 − 1

m)∆

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::First-Come First-Serve 9 / 25

slide-17
SLIDE 17

Dual-approximation Algorithm for Stretch using EDF

DASEDF(S)

It targets a maximum stretch S. Task i must complete before the deadline Di = ri + piS. Solves the deadline problem.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::DASEDF 10 / 25

slide-18
SLIDE 18

Dual-approximation Algorithm for Stretch using EDF

DASEDF(S)

It targets a maximum stretch S. Task i must complete before the deadline Di = ri + piS. Solves the deadline problem.

Earliest Deadline First (EDF)

Considers the tasks in order of non-decreasing deadline. Schedules the tasks as soon as possible. If a task starts after its deadline, declares the schedule infeasible.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::DASEDF 10 / 25

slide-19
SLIDE 19

Dual-approximation Algorithm for Stretch using EDF

DASEDF(S)

It targets a maximum stretch S. Task i must complete before the deadline Di = ri + piS. Solves the deadline problem.

Earliest Deadline First (EDF)

Considers the tasks in order of non-decreasing deadline. Schedules the tasks as soon as possible. If a task starts after its deadline, declares the schedule infeasible.

DASEDF

Find the smallest maximum stretch S∗ such that the deadline problem is feasible using a binary search. Use that schedule until an other tasks is released.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::DASEDF 10 / 25

slide-20
SLIDE 20

Dual-approximation Algorithm for Stretch using EDF

Lemma

If a schedule that completes each task i before Di exists, then EDF creates a schedule where each task i completes before Di + (1 − 1

m)pi.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::DASEDF 11 / 25

slide-21
SLIDE 21

Dual-approximation Algorithm for Stretch using EDF

Lemma

If a schedule that completes each task i before Di exists, then EDF creates a schedule where each task i completes before Di + (1 − 1

m)pi.

Theorem

DASEDF(S) returns a solution with maximum stretch less than S + 1 − 1

m

  • r ensures that no schedule with maximum stretch of S exists.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::DASEDF 11 / 25

slide-22
SLIDE 22

Dual-approximation Algorithm for Stretch using EDF

Lemma

If a schedule that completes each task i before Di exists, then EDF creates a schedule where each task i completes before Di + (1 − 1

m)pi.

Theorem

DASEDF(S) returns a solution with maximum stretch less than S + 1 − 1

m

  • r ensures that no schedule with maximum stretch of S exists.

Theorem

When DASEDF is invoked, let S∗ be the optimal stretch for the tasks in

  • queue. DASEDF returns a solution of stretch S < S∗ + 1.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::DASEDF 11 / 25

slide-23
SLIDE 23

Dual-approximation Algorithm for Stretch using EDF

Lemma

If a schedule that completes each task i before Di exists, then EDF creates a schedule where each task i completes before Di + (1 − 1

m)pi.

Theorem

DASEDF(S) returns a solution with maximum stretch less than S + 1 − 1

m

  • r ensures that no schedule with maximum stretch of S exists.

Theorem

When DASEDF is invoked, let S∗ be the optimal stretch for the tasks in

  • queue. DASEDF returns a solution of stretch S < S∗ + 1.

Observation

DASEDF is not an online approximation algorithm. Its performance ratio is at least ∆.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::DASEDF 11 / 25

slide-24
SLIDE 24

Summing up

Positive Results

FCFS is a ∆-approximation algorithm on 1 machine [LSV08]. FCFS is a (2∆ + 1)-approximation algorithm on m machines. DASEDF is a ”local” 1-additive-approximation on m machines.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::Summing up 12 / 25

slide-25
SLIDE 25

Summing up

Positive Results

FCFS is a ∆-approximation algorithm on 1 machine [LSV08]. FCFS is a (2∆ + 1)-approximation algorithm on m machines. DASEDF is a ”local” 1-additive-approximation on m machines.

Negative results

No approximation better than 1+∆

2

  • n 1 machine.

No approximation better than

1+

∆ m+1

2

  • n m machines.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::Summing up 12 / 25

slide-26
SLIDE 26

Summing up

Positive Results

FCFS is a ∆-approximation algorithm on 1 machine [LSV08]. FCFS is a (2∆ + 1)-approximation algorithm on m machines. DASEDF is a ”local” 1-additive-approximation on m machines.

Negative results

No approximation better than 1+∆

2

  • n 1 machine.

No approximation better than

1+

∆ m+1

2

  • n m machines.

How to beat ∆ ?

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Approximation Results::Summing up 12 / 25

slide-27
SLIDE 27

Outline of the Talk

1

Problem Definition The max stretch objective What’s known

2

Approximation Results Counter Examples First-Come First-Serve DASEDF Summing up

3

Resource Augmentation Faster Machines More Machines

4

Experimental Validation

5

Conclusion

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Resource Augmentation:: 13 / 25

slide-28
SLIDE 28

Resource Augmentation : Faster machines

Theorem

1 | ri, pi, online | max Si can not be approximated within 1+∆

using a ρ faster machine.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Resource Augmentation::Faster Machines 14 / 25

slide-29
SLIDE 29

Resource Augmentation : More machines

Theorem

1 | ri, pi, online | max Si can not be approximated within

ρ

√ ∆ ρ+2 using ρ

machines.

Proof.

Send successively tasks of size ∆,

ρ

√ ∆

ρ−1, . . . ,

ρ

√ ∆, 1

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Resource Augmentation::More Machines 15 / 25

slide-30
SLIDE 30

Resource Augmentation : More machines

Theorem

1 | ri, pi, online | max Si can not be approximated within

ρ

√ ∆ ρ+2 using ρ

machines.

Proof.

Send successively tasks of size ∆,

ρ

√ ∆

ρ−1, . . . ,

ρ

√ ∆, 1

The Split algorithm

The algorithm schedules the tasks of size between

ρ

√ ∆

j and

ρ

√ ∆

j+1 on

the jth copy of the system. The local schedule is done by a classical max stretch algorithm called ALGO.

Theorem

If ALGO is an f (∆)-approximation on m machines, Split is a f (

ρ

√ ∆)-approximation algorithm using ρm machines.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Resource Augmentation::More Machines 15 / 25

slide-31
SLIDE 31

Reservation Scheme

In the real life, we don’t have ρ times more machines.

Real Split(X, T)

splits the cluster in two parts :

the main part of m − X machines. the auxilary part of X machines.

when a task is released, the scheduling algorithm is run on the main part with the new task. if the maximum stretch of the main part is more than T

the scheduling algorithm is run on the auxilary part with the new task. the task is allocated to the part that gives the best overall maximum stretch.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Resource Augmentation::More Machines 16 / 25

slide-32
SLIDE 32

Outline of the Talk

1

Problem Definition The max stretch objective What’s known

2

Approximation Results Counter Examples First-Come First-Serve DASEDF Summing up

3

Resource Augmentation Faster Machines More Machines

4

Experimental Validation

5

Conclusion

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Experimental Validation:: 17 / 25

slide-33
SLIDE 33

Setting

Instance

300 machines; 20000 tasks processing time : uniformly distributed in [1 : ∆] release time : exponential inter arrival time of parameter λ

Parameters

∆ between 5 and 100 λ to have a load between 220 and 310. (load : average number of task in the system) (20 runs per parameter set)

Reservation scheme

X : between 1 and 30 machines in the auxilary part T : stretch threshold between 1.2 and 3 for DASEDF and from 1.2 to 10 for FCFS

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Experimental Validation:: 18 / 25

slide-34
SLIDE 34

Result - overview

250 260 270 280 290 300 0 10 20 30 40 50 60 70 80 90 100 1 10 100 stretch FCFS DASEDF load Delta stretch

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Experimental Validation:: 19 / 25

slide-35
SLIDE 35

Result - in function of ∆

  • 10

10 20 30 40 50 60 70 20 40 60 80 100 max stretch Delta maximum stretch in function of Delta for high (>270) load values FCFS DASEDF Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Experimental Validation:: 20 / 25

slide-36
SLIDE 36

Results - in function of the load (∆ = 100)

1 10 100 1000 250 260 270 280 290 300 310 max stretch load FCFS FCFS with reservation DASEDF DASEDF with reservation

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Experimental Validation:: 21 / 25

slide-37
SLIDE 37

Outline of the Talk

1

Problem Definition The max stretch objective What’s known

2

Approximation Results Counter Examples First-Come First-Serve DASEDF Summing up

3

Resource Augmentation Faster Machines More Machines

4

Experimental Validation

5

Conclusion

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Conclusion:: 22 / 25

slide-38
SLIDE 38

Conclusion

Positive results

FCFS is a 2∆ + 1-approximation on m machines. DASEDF is a ”local” 1-additive-approximation on m machines. DASEDF beats FCFS in simulations. Split is a ρ-augmented. f (

ρ

√ ∆)-approximation algorithm.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Conclusion:: 23 / 25

slide-39
SLIDE 39

Conclusion

Positive results

FCFS is a 2∆ + 1-approximation on m machines. DASEDF is a ”local” 1-additive-approximation on m machines. DASEDF beats FCFS in simulations. Split is a ρ-augmented. f (

ρ

√ ∆)-approximation algorithm.

Machine availability is the key

Approximation lower bounds drops from 1+∆

2

to

1+

∆ m+1

2

when the number of machine increases. Machine resource augmentation leads to

ρ

√ ∆ ρ+2 approximation lower

bound which is better than having faster machine which leads to 1+∆

2ρ .

The reservation scheme helps in simulation.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Conclusion:: 23 / 25

slide-40
SLIDE 40

What to do next ?

Improvement

The performance ratio of FCFS on m machines is probably loose. Performance ratio of DASEDF ? Closing the gap between and

1+

∆ m+1

2

(LB) and 2∆ + 1 (FCFS). Using a staircase construction to maximize availability perhaps ? Select the right parameters for the reservation scheme.

On other models

Rigid tasks. Moldable tasks (“scheduling in Knoxville” 2009 and JSSPP 2010). Average stretch.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Conclusion:: 24 / 25

slide-41
SLIDE 41

Thank you

More information

contact : esaule@bmi.osu.edu visit: http://bmi.osu.edu/hpc/

Research at HPC lab is funded by

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Conclusion:: 25 / 25

slide-42
SLIDE 42
  • M. A. Bender, S. Chakrabarti, and S. Muthukrishnan.

Flow and stretch metrics for scheduling continuous job streams. In Proceedings of the 9th ACM-SIAM Symposium on Discrete Algorithms (SODA), pages 270–279, 1998. Arnaud Legrand, Alan Su, and Frdric Vivien. Minimizing the stretch when scheduling flows of divisible requests. Journal of Scheduling, 2008.

Erik Saule Ohio State University, Biomedical Informatics HPC Lab http://bmi.osu.edu/hpc Online optimization of max stretch on clusters Conclusion:: 25 / 25