Presentation is loading. Please wait.

Presentation is loading. Please wait.

Task Alloc. In Dist. Embed. Systems Murat Semerci A.Yasin Çitkaya CMPE 511 COMPUTER ARCHITECTURE.

Similar presentations


Presentation on theme: "Task Alloc. In Dist. Embed. Systems Murat Semerci A.Yasin Çitkaya CMPE 511 COMPUTER ARCHITECTURE."— Presentation transcript:

1 Task Alloc. In Dist. Embed. Systems Murat Semerci A.Yasin Çitkaya CMPE 511 COMPUTER ARCHITECTURE

2 Task Allocation It is process of assigning the task in a way that deadlines and precedences of the tasks are preserved. It is process of assigning the task in a way that deadlines and precedences of the tasks are preserved. They are represented as DAGs (Directed Acyclic Graph). They show precedence and activities between tasks. They are represented as DAGs (Directed Acyclic Graph). They show precedence and activities between tasks.

3 Embedded Systems It is any combination of hardware and software systems even involving mechanical parts to fulfill a specific function. Unlike general-purpose computers embedded sytems are designed to performed only interested tasks. It is any combination of hardware and software systems even involving mechanical parts to fulfill a specific function. Unlike general-purpose computers embedded sytems are designed to performed only interested tasks. Most known examples are mobile phones, PDAs, MP3 players, and sensors (in networks). Most known examples are mobile phones, PDAs, MP3 players, and sensors (in networks). The ones in our interest are the systems collaboratively performing tasks in a distributed environment. The ones in our interest are the systems collaboratively performing tasks in a distributed environment.

4 Task Allocation in Embedded Systems The major problems in task allocation in distributed systems are: The major problems in task allocation in distributed systems are: Energy Problem Energy Problem Computation/Design Limitation Computation/Design Limitation Real-Time Processing (Dynamic Tasks Emerging) Real-Time Processing (Dynamic Tasks Emerging) Communication And Communication Channels Communication And Communication Channels

5 Genetic Algorithm Based Task Allocation I Since most optimal task allocations are hard to find, they can not be evaluated in a short time, real-time allocation must be evaluated by either heuristics or genetic algorithms. Since most optimal task allocations are hard to find, they can not be evaluated in a short time, real-time allocation must be evaluated by either heuristics or genetic algorithms. The only criterion is the task deadline. The only criterion is the task deadline. It just deals with objection function information (deadline). It works globally from a population, not a single point. It just deals with objection function information (deadline). It works globally from a population, not a single point.

6 Genetic Algorithm Based Task Allocation II The operations are stochastic, not deterministic (Crossover, Mutation) The operations are stochastic, not deterministic (Crossover, Mutation) The individuals whose utilization is lower than or equal to predefined node utilization are the fittest (It can not exceed 1) The individuals whose utilization is lower than or equal to predefined node utilization are the fittest (It can not exceed 1)

7 LEneS (Low Energy Scheduling) I It is one of first task allocation/scheduling algorithms considering energy saving. It is one of first task allocation/scheduling algorithms considering energy saving. Fundamentally uses DVS (Dynamic Voltage Scaling). Fundamentally uses DVS (Dynamic Voltage Scaling). The tasks can be done on a longer time as long as the deadline of the all tasks is not exceeded. The tasks can be done on a longer time as long as the deadline of the all tasks is not exceeded. It is a variant of list-scheduling (assign task to the node offering earliest finish time) with energy- sensetivity. It is a variant of list-scheduling (assign task to the node offering earliest finish time) with energy- sensetivity.

8 LEneS II

9 LEneS III Take advantage of slack times. Take advantage of slack times. As long as deadline not exceeded, run on low voltages. As long as deadline not exceeded, run on low voltages.

10 BEATA (Balanced Energy- Aware Task Allocation) I It is a heuristics proposed for soft real-time heterogeneous embedded systems. It is a heuristics proposed for soft real-time heterogeneous embedded systems. It assumes no DVS mechanisms. It assumes distinct computation time, communication time, communication capacities..vs. It assumes no DVS mechanisms. It assumes distinct computation time, communication time, communication capacities..vs. It assumes all nodes are connected by a single-hop wired or wireless network. It assumes all nodes are connected by a single-hop wired or wireless network.

11 BEATA II

12 BEATA III The total energy consumed by the network is the sum of energy consumed by active and idle nodes and active and idle links. The total energy consumed by the network is the sum of energy consumed by active and idle nodes and active and idle links. It is a variant of list-scheduling. It is a variant of list-scheduling. The idea is assigning the task to the node consuming less energy among a predefined number of nodes completing it fast. The idea is assigning the task to the node consuming less energy among a predefined number of nodes completing it fast.

13 BEATA IV

14 Constraints of embedded systems: Time Time Area (processing power, memory) Area (processing power, memory) Energy Energy Cost Cost (market size expected at more than $100 billion in 2006)

15 Energy Balanced Task Allocation The goal is to balance the energy dissipation of the elements during each period of the application with respect to the remaining energy of elements, such that the system lifetime is maximized. The goal is to balance the energy dissipation of the elements during each period of the application with respect to the remaining energy of elements, such that the system lifetime is maximized. A single-hop cluster of homogeneous sensor nodes connected through multiple wireless channels is considered. A single-hop cluster of homogeneous sensor nodes connected through multiple wireless channels is considered.

16 Clustering: Different ways to cluster a task graph:

17 Procedure: An assignment of all the tasks to onto the elements, An assignment of all the tasks to onto the elements, The setting of voltage levels for tasks, The setting of voltage levels for tasks, The scheduling of the computation / communication activities, specified by the start and finish time of activities. The scheduling of the computation / communication activities, specified by the start and finish time of activities.

18 Integer Linear Programming: computation and communication activities with precedence constraints are forced by Constraint set 1 computation and communication activities with precedence constraints are forced by Constraint set 1

19 Integer Linear Programming: computation and communication activities that do not have precedence constraints an extra set forced by Constraint set 2 computation and communication activities that do not have precedence constraints an extra set forced by Constraint set 2

20 Integer Linear Programming: In Constraint set 3, the system lifetime is calculated In Constraint set 3, the system lifetime is calculated Overall ILP formulation

21 Heuristic approach: Assuming that the voltage levels of all tasks are set to the highest options Assuming that the voltage levels of all tasks are set to the highest options In the first phase, the tasks are grouped into clusters with the goal to minimize the overall execution time of the application In the first phase, the tasks are grouped into clusters with the goal to minimize the overall execution time of the application

22 Heuristic approach: In the second phase, clusters are assigned onto the elements such that the energy dissipation of each element is proportional to the remaining energy of the element. In the second phase, clusters are assigned onto the elements such that the energy dissipation of each element is proportional to the remaining energy of the element.

23 Heuristic approach: In the last phase, the system lifetime is maximized by lowering the voltage levels of of tasks. In the last phase, the system lifetime is maximized by lowering the voltage levels of of tasks.

24 Example: An application example; a)Application graph b) Time and energy costs for executing tasks at voltage levels V h and V l

25 Clustering steps for the example

26 Simulation results: Lifetime improvement for small scale problems (3 sensor nodes, 3 voltage levels, 2 channels, CCR=1) a)lifetime improvement achieved by the ILP-based approach b)perfomance comparison of the ILP-based approach and the 3-phase heuristic.

27 Simulation results: Lifetime improvement of the 3-phase heuristic for large scale problems (10 sensor nodes, 8 voltage levels, 4 channels, 60-100 tasks) a)lifetime improvement vs. system utilization (u) and the communication to computation ratio (CCR) b)lifetime improvement vs. number of tasks (CCR=4)

28 Simulation results: Impact of variation in number of voltage levels (10 sensor nodes, 4 channels, 60 tasks, CCR=2)

29 Simulation results: Lifetime improvement of the 3-phase heuristic incorporated with modulation scaling (10 sensor nodes, 8 voltage levels, 4 channels, 3 modulation levels, 60 tasks) a)small energy/time ratio for communication activities (C i =10 -7 ) b) small energy/time ratio for communication activities (C i =10 -6 )

30 Simulation results from real world: Lifetime improvement for the matrix factorization algorithm (10 sensor nodes, 8 voltage levels, 4 channels, 3 modulation levels) a)u=0.5 b)u=0.8

31 Simulation results from real world: Lifetime improvement for the FFT algorithm (10 sensor nodes, 8 voltage levels, 4 channels, 3 modulation levels) a)u=0.5 b)u=0.8

32 Conclusions Task allocations are design to fulfill different constraints (mostly time, but also energy). Task allocations are design to fulfill different constraints (mostly time, but also energy). Optimal solutions due to including integer programming can not be found in a realistic time. Because of this, heuristics or genetic algorithms are used. Optimal solutions due to including integer programming can not be found in a realistic time. Because of this, heuristics or genetic algorithms are used. Energy constraint is the crucial constraint in embedded system. Since energy can be saved by using low power during computation, there is a trade-off between time and energy. Energy constraint is the crucial constraint in embedded system. Since energy can be saved by using low power during computation, there is a trade-off between time and energy. Heuristics for energy savings are either based on individual power consumption or on network (total) energy consumption. Heuristics for energy savings are either based on individual power consumption or on network (total) energy consumption. Different heuristics are suggested, which depend on different assumptions (homogenous or heterogeneous...) Different heuristics are suggested, which depend on different assumptions (homogenous or heterogeneous...) Any other types energy saving methods can be proposed based on new solutions(e.g. new communication schemes) Any other types energy saving methods can be proposed based on new solutions(e.g. new communication schemes)

33 References B. Korousic-Seljak, J.E. Cooling, “Optimization of Multiprocessor Real-Time Embedded System Structures”, Proceedings, 7th Mediterranean Electrotechnical Conference, Vol.1, pp.313-316, 12-14 April 1994. B. Korousic-Seljak, J.E. Cooling, “Optimization of Multiprocessor Real-Time Embedded System Structures”, Proceedings, 7th Mediterranean Electrotechnical Conference, Vol.1, pp.313-316, 12-14 April 1994. F. Gruian, K. Kuchcinski, “ LEneS: Task Scheduling for Low-Energy Systems Using Variable Supply Voltage Processors”, Proceedings, Asia and South Pacific Design Automation Conf.,pp. 449-455, 30 Jan.-2 Feb. 2001. F. Gruian, K. Kuchcinski, “ LEneS: Task Scheduling for Low-Energy Systems Using Variable Supply Voltage Processors”, Proceedings, Asia and South Pacific Design Automation Conf.,pp. 449-455, 30 Jan.-2 Feb. 2001. T. Xie, X. Qin, M. Nijim, “Solving Energy-Latency Dilemma: Task Allocation for Parallel Applications in Heteregeneous Embedded Systems”, Proceedings, Inter. Conf. on Parallel Processing, pp. 12-22, 14-18Aug. 2006. T. Xie, X. Qin, M. Nijim, “Solving Energy-Latency Dilemma: Task Allocation for Parallel Applications in Heteregeneous Embedded Systems”, Proceedings, Inter. Conf. on Parallel Processing, pp. 12-22, 14-18Aug. 2006. Y. Yu, V. K. Prasanna, “Energy-Balanced Task Allocation for Collaborating Processing in Wireless Sensor Networks”, Mobile Networks and Applications, Vol. 10, pp. 115-131, 2005. Y. Yu, V. K. Prasanna, “Energy-Balanced Task Allocation for Collaborating Processing in Wireless Sensor Networks”, Mobile Networks and Applications, Vol. 10, pp. 115-131, 2005. M. A. Weiss, “Data Structures & Algorithms Analysis in C++“, 2nd Ed., Addison Wesley Longman, 1999. M. A. Weiss, “Data Structures & Algorithms Analysis in C++“, 2nd Ed., Addison Wesley Longman, 1999.


Download ppt "Task Alloc. In Dist. Embed. Systems Murat Semerci A.Yasin Çitkaya CMPE 511 COMPUTER ARCHITECTURE."

Similar presentations


Ads by Google