You are on page 1of 23

Exploiting Deadline Flexibility in Grid Workflow Rescheduling

Wei Chen Alan Fekete Young Choon Lee

Agenda
Introduction Deadline Guaranteed Rescheduling Workflow Scheduling Task Rescheduling Performance Study Conclusion

Computational Grid and Workflow Application


Computational Grid:
Grid {R1 , R2 ......, Rn }

Heterogeneous Computing Site (Resource Instance) Advance Reservation


1

Workflow Application
Directed Acyclic Graph (DAG) Job (V, E), where V is the set of tasks and E is directed edges represent precedence constraints between corresponding tasks
2 3 4 5

Grid Workflow Scheduling


List scheduling heuristics
Heterogeneous Earliest-Finish-Time (HEFT)
Greedy Best-First Strategy It lacks an overall consideration in scheduling different workflow jobs

Agenda
Introduction Deadline Guaranteed Rescheduling Workflow Scheduling Task Rescheduling Performance Study Conclusion

The Approach we build on: Deadline Guaranteed Rescheduling (DGR)

Deadline-based scheduling: it allows each job to come with a deadline, and from this, each task of the job can be placed more flexibly (not only at the earliest possible timeslot)
A rescheduling mechanism: the tasks of an earlier job might be rearranged to other time slots or resource instances, giving extra resource availability for more urgent tasks

An Example of Scheduling and Rescheduling Workflow Jobs


(A)
2 1 3 4 5 R1 R2 R3 R1 R2 R3 R1 R2 R3

A 1
A 2

A 1 A 2 B 3 B 4 A 5
(b)

B 1

A 1

B 1

A 3

A 3 A 4

B 2
A 2

A 3

B 3 B 4

B 2
A 2

(B)
2

1
Deadline (B)

A 4
A 5
(a)

A 4

3
Deadline (A)

A 5
(c)

The Key Points of Our Approach


First, our approach loosely distributes tasks along the time axis according to the deadline of the workflow job, but not squeezes them on the earliest finish time. It is more flexible in rescheduling to allow urgent tasks get required resource availability. Second, our approach is not to reconsider schedules of the whole job again. Each task is rescheduled within a time slot boundary so that it does not affect the current schedules of all its predecessors and successors. This simplifies the complexity of our algorithm.

Third, our rescheduling can be made not only in time dimension (another time slot), but also in space dimension (different resource instances). This increases the flexibility in rescheduling.
Our rescheduling is to rearrange advance reservations of tasks before they are submitted for execution. This approach does not incur the cost in task migration.

Agenda
Introduction Deadline Guaranteed Rescheduling Workflow Scheduling Task Rescheduling Performance Study Conclusion

Task Deadlines
Weighted DAG
vi V , ET (vi ) workload(vi ) / S eij E , DT (eij ) data(eij ) / B makespan max{EFT(vi )} vi V ratio deadline / makespan ET ' ET ratio DT ' DT ratio
S : the averagecom putation speed B : the averagenetwork bandwidth

(1) (2) (3) (4) (5)

vi V , v j predecessor (vi ), EFT(vi ) max{EFT(v j ) DT (eij )} ET (vi )

An advisable deadline for each task


v i V v j successor (vi ), deadline(vi ) min{ deadline(v j ) ET ' (v j ) DT ' (eij )} (6)

The deadline of a workflow job can be guaranteed if all of its tasks are finished before their deadlines. These advisable deadlines reasonably balance the time for each task based on their workload proportions.

Scheduling Algorithm
Input a DAG Output scheduling of the job calculate deadlines for each task; rank tasks into a priority list for each task in the list do schedule task within its deadline if it fails then schedule task in the earliest finish time if this finish time > jobs deadline then break the loop end if end for if scheduling is not done then rollback schedules have been made for each task in the list do schedule task in the earliest finish time if this finish time > jobs deadline then reject the job end for end if

Agenda
Introduction Deadline Guaranteed Rescheduling Workflow Scheduling Task Rescheduling Performance Study Conclusion

Time Slot Boundary


The time slot boundary is calculated when a task tries to be rescheduled on a specific resource instance At the moment, the actual schedules of the tasks predecessors and successors are known Since the target resource is specified, the actual network bandwidths between the resource instance and that of the tasks predecessors or successors are also known
vi V , v j predecessor (vi ), vk successor (vi ) EST (vi , R) max{AFT(v j ) data(eij ) bandwidth(eij )} LFT (vi , R) min{ AST (vk ) data(eik ) bandwidth(eik )}

Bipartite Graph Matching


We make all tasks one part of nodes T (no matter which workflow job the task belongs to), and all resource instances the other part R. Every task is linked with all its satisfiable resources. The arrow of the line shows whether the task has been scheduled on (or matched with) a resource instance, which is represented by an arrow pointing to the task.
T 1 2 2 3 (a) R T 1 R 1 2 T 1 R 1 2

2 3
(b)

2 3
(c)

Rescheduling Algorithm
Input a task Output scheduling of the task push the task into an empty stack S while S is not empty pop a task from S for each satisfiable resource of the task do calculate EST and LFT if it can be scheduled in the boundary then return: the scheduling else if a task can be removed then push it into S end if end for end while
return: scheduling fails

Agenda
Introduction Deadline Guaranteed Rescheduling Workflow Scheduling Task Rescheduling Performance Study Conclusion

Experiment Setup
Heterogeneous Grid
1,000 heterogeneous computing sites Different setting in resource properties, computation capacity and speed Computing sites are fully connected by varying network bandwidths

Workflow Jobs
various sizes and parallelism degrees both computation intensive and communication intensive ones some are more urgent than others

Acceptance Rate
Overall Acceptance Rate
100% 80% 60% 40% 20% 0 100 200 300
HEFT DGR DGR-L

Number of Jobs Submitted

Resource Utilization
Resource Utilization
100% 80% 60% 40% 20% 0% 0 100 200 300
HEFT DGR DGR-L

Number of Submitted Jobs

Running Time of Algorithms


Running Time
300 250
HEFT DGR DGR-L

Time (ms)

200 150 100 50 0 0 100 200 300

Number of Submitted Jobs

Agenda
Introduction Deadline Guaranteed Rescheduling Workflow Scheduling Task Rescheduling Performance Study Conclusion

Conclusion
A deadline-based strategy to schedule and reschedule workflow jobs; individual tasks can be rescheduled, based on the requirements of later jobs as they arrive. The approach satisfies Grid users as more jobs can be finished before their deadlines, and it also benefits the Grid owner by improving resource utilization. By using appropriate heuristics, the cost of the scheduling decision-making is quite acceptable and scalable to a large number of tasks scheduled in the system.

Thanks
Questions

You might also like