Download presentation
Presentation is loading. Please wait.
Published byAustin Melton Modified over 8 years ago
1
Pradeep Konduri pkonduri1@student.gsu.edu
2
Static Process Scheduling: Proceedance process model Communication system model Application Dicussion References
3
Static process scheduling: deterministic scheduling policy Scheduling a set of partially ordered tasks on a non-preemptive multi-processor system of identical processors to minimize the overall finishing time (makespan) Optimize makespan NP-complete Need approximate or heuristic algorithms… Attempt to balance and overlap computation and communication Mapping processes to processors is determined before the execution Once a process starts, it stays at the processor until completion Need prior knowledge about process behavior (execution time, precedence relationships, communication patterns) Scheduling decision is centralized and non-adaptive
4
Communication overhead for one message Execution time Communication overhead for A(P1) and E(P3) = 4 * 2 = 8 No. of messages to communicate
5
Proceedance Process model: Static multiprocessor scheduling Represented by DAG Minimize overall makespan Nodes : Task with known execution time Edges : Weight showing message units to be transferred Weights Hides the details of hardware architecture NP-Complete
6
Communication system model: Scheduling strategies List Scheduling (LS): no processor remains idle if there are some tasks available that it could process (no communication overhead) Extended List Scheduling (ELS): LS first + communication overhead Earliest Task First (ETF) scheduling: the earliest schedulable task is scheduled first Critical path: longest execution path Lower bound of the makespan Try to map all tasks in a critical path onto a single processor
8
Communication process model: Maximize resource utilization and minimize inter-process communication Undirected graph G=(V,E) V: Processes E: weight = amount of interaction between processes Cost equation Cost(G,P) = E e j (p i ) + E c i,j (p i,p j ) e = process execution cost (cost to run process j on processor i) C = communication cost (C==0 if i==j) NP-Complete
9
Example: Partition the graph by drawing a line cutting through some edges Result in two disjoint graphs, one for each process Set of removed edges cut set Cost of cut set sum of weights of the edges Total inter-process communication cost between processors Of course, the cost of cut sets is 0 if all processes are assigned to the same node Computation constraints (no more k, distribute evenly…) Example: Maximum flow and minimum cut in a commodity-flow network Find the maximum flow from source to destination
11
Only the cuts that separate A and B are feasible
12
There are many applications that are developed and being developed using these models. Some of them are: System-level design methods for MPSoC [1] Functional Validation of System Level Static Scheduling [2] Battery-aware static scheduling for distributed real-time embedded systems [3] Static scheduling algorithms for allocating directed task graphs to multiprocessors [4]
13
Once a process is assigned to a processor, it remain there until its execution has been completed Need prior knowledge of execution time and communication behavior Not effective Not realistic We need a dynamic scheduling algorithm
14
[1] Chengmo Yang, Alex Orailoglu; System-level design methods for MPSoC: Predictable execution adaptivity through embedding dynamic reconfigurability into static MPSoC schedules; Proceedings of the 5th IEEE/ACM international conference on Hardware/software codesign and system synthesis CODES+ISSS '07; September 2007 [2] Samar Abdi, Daniel Gajski; Functional Validation of System Level Static Scheduling; Proceedings of the conference on Design, Automation and Test in Europe - Volume 1 DATE '05; March 2005 [3] Jiong Luo, Niraj K. Jha; Battery-aware static scheduling for distributed real-time embedded systems; Proceedings of the 38th conference on Design automation DAC '01; June 2001 [4] Yu-Kwong Kwok, Ishfaq Ahmad; Static scheduling algorithms for allocating directed task graphs to multiprocessors; ACM Computing Surveys; December 1999
15
Thank you!!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.