Scheduling Parallel Task

Slides:



Advertisements
Similar presentations
Resource Management §A resource can be a logical, such as a shared file, or physical, such as a CPU (a node of the distributed system). One of the functions.
Advertisements

Courseware Scheduling of Distributed Real-Time Systems Jan Madsen Informatics and Mathematical Modelling Technical University of Denmark Richard Petersens.
Evaluating Heuristics for the Fixed-Predecessor Subproblem of Pm | prec, p j = 1 | C max.
Optimal Instruction Scheduling for Multi-Issue Processors using Constraint Programming Abid M. Malik and Peter van Beek David R. Cheriton School of Computer.
Solutions for Scheduling Assays. Why do we use laboratory automation? Improve quality control (QC) Free resources Reduce sa fety risks Automatic data.
Precedence Constrained Scheduling Abhiram Ranade Dept. of CSE IIT Bombay.
Martha Garcia.  Goals of Static Process Scheduling  Types of Static Process Scheduling  Future Research  References.
Chapter 5 CPU Scheduling. CPU Scheduling Topics: Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling.
Precedence Constrained Scheduling Abhiram Ranade Dept. of CSE IIT Bombay.
11Sahalu JunaiduICS 573: High Performance Computing5.1 Analytical Modeling of Parallel Programs Sources of Overhead in Parallel Programs Performance Metrics.
Computational problems, algorithms, runtime, hardness
Reference: Message Passing Fundamentals.
Scheduling for Embedded Real-Time Systems Amit Mahajan and Haibo.
1 Single Machine Deterministic Models Jobs: J 1, J 2,..., J n Assumptions: The machine is always available throughout the scheduling period. The machine.
Chapter 6: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 Chapter 6: CPU Scheduling Basic.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Online Data Gathering for Maximizing Network Lifetime in Sensor Networks IEEE transactions on Mobile Computing Weifa Liang, YuZhen Liu.
By Group: Ghassan Abdo Rayyashi Anas to’meh Supervised by Dr. Lo’ai Tawalbeh.
Chapter 1 Program Design
Advanced Topics in Algorithms and Data Structures 1 Two parallel list ranking algorithms An O (log n ) time and O ( n log n ) work list ranking algorithm.
1 Presenter: Ming-Shiun Yang Sah, A., Balakrishnan, M., Panda, P.R. Design, Automation & Test in Europe Conference & Exhibition, DATE ‘09. A Generic.
Distributed Real-Time systems 1 By: Mahdi Sadeghizadeh Website: Sadeghizadeh.ir Advanced Computer Networks.
A Categorization of Real-Time Multiprocessor Scheduling Problems and Algorithms Presentation by Tony DeLuce CS 537 Scheduling Algorithms Spring Quarter.
VOLTAGE SCHEDULING HEURISTIC for REAL-TIME TASK GRAPHS D. Roychowdhury, I. Koren, C. M. Krishna University of Massachusetts, Amherst Y.-H. Lee Arizona.
CHALLENGING SCHEDULING PROBLEM IN THE FIELD OF SYSTEM DESIGN Alessio Guerri Michele Lombardi * Michela Milano DEIS, University of Bologna.
Network Aware Resource Allocation in Distributed Clouds.
1 Scheduling CEG 4131 Computer Architecture III Miodrag Bolic Slides developed by Dr. Hesham El-Rewini Copyright Hesham El-Rewini.
Static Process Schedule Csc8320 Chapter 5.2 Yunmei Lu
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 March 01, 2005 Session 14.
DLS on Star (Single-level tree) Networks Background: A simple network model for DLS is the star network with a master-worker platform. It consists of a.
Scheduling policies for real- time embedded systems.
Stochastic DAG Scheduling using Monte Carlo Approach Heterogeneous Computing Workshop (at IPDPS) 2012 Extended version: Elsevier JPDC (accepted July 2013,
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
1 Andreea Chis under the guidance of Frédéric Desprez and Eddy Caron Scheduling for a Climate Forecast Application ANR-05-CIGC-11.
The El-Rewini/Ali Scheduling of In-Forest Task Graph on Two Processors with Communication Project Presentation By David Y. Feinstein SMU - CSE 8388 Spring.
QoS Routing in Networks with Inaccurate Information: Theory and Algorithms Roch A. Guerin and Ariel Orda Presented by: Tiewei Wang Jun Chen July 10, 2000.
Static Process Scheduling Section 5.2 CSc 8320 Alex De Ruiter
Summary :-Distributed Process Scheduling Prepared By:- Monika Patel.
6. Application mapping 6.1 Problem definition
1 11/29/2015 Chapter 6: CPU Scheduling l Basic Concepts l Scheduling Criteria l Scheduling Algorithms l Multiple-Processor Scheduling l Real-Time Scheduling.
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 March 03, 2005 Session 15.
Operational Research & ManagementOperations Scheduling Economic Lot Scheduling 1.Summary Machine Scheduling 2.ELSP (one item, multiple items) 3.Arbitrary.
Franciszek Seredynski, Damian Kurdej Polish Academy of Sciences and Polish-Japanese Institute of Information Technology APPLYING LEARNING CLASSIFIER SYSTEMS.
Module 2 Overview of Real Time System Scheduling
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
1 CS.217 Operating System By Ajarn..Sutapart Sappajak,METC,MSIT Chapter 5 CPU Scheduling Slide 1 Chapter 5 CPU Scheduling.
6.1 CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
Content caching and scheduling in wireless networks with elastic and inelastic traffic Group-VI 09CS CS CS30020 Performance Modelling in Computer.
Static Process Scheduling
CPS Computational problems, algorithms, runtime, hardness (a ridiculously brief introduction to theoretical computer science) Vincent Conitzer.
Introduction to Real-Time Systems
1 Hardware-Software Co-Synthesis of Low Power Real-Time Distributed Embedded Systems with Dynamically Reconfigurable FPGAs Li Shang and Niraj K.Jha Proceedings.
Jamie Unger-Fink John David Eriksen.  Allocation and Scheduling Problem  Better MPSoC optimization tool needed  IP and CP alone not good enough  Communication.
A stochastic scheduling algorithm for precedence constrained tasks on Grid Future Generation Computer Systems (2011) Xiaoyong Tang, Kenli Li, Guiping Liao,
Lecture 4 CPU scheduling. Basic Concepts Single Process  one process at a time Maximum CPU utilization obtained with multiprogramming CPU idle :waiting.
Pradeep Konduri Static Process Scheduling:  Proceedance process model  Communication system model  Application  Dicussion.
CPU scheduling.  Single Process  one process at a time  Maximum CPU utilization obtained with multiprogramming  CPU idle :waiting time is wasted 2.
Basic Concepts Maximum CPU utilization obtained with multiprogramming
Conception of parallel algorithms
Parallel Programming By J. H. Wang May 2, 2017.
CprE 458/558: Real-Time Systems
Chapter 6: CPU Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
3: CPU Scheduling Basic Concepts Scheduling Criteria
Chapter 6: CPU Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Presentation transcript:

Scheduling Parallel Task By: Atena Daneshmandi

Outline Introduction Typology of Parallel Tasks Task Graphs A Deterministic module A Deterministic module by Gantt Chart C# Example(Three Tasks in Parallel) Complexity of scheduling Parallel Task Conclusion References

Introduction The idea behind parallel tasks (PTs)is to consider an alternative for dealing with communications, especially in the case of large delays. A PT is a task that gathers elementary operations, typically a numerical routine or a nested loop, which contains itself enough parallelism to be executed by more than one processor. A parallel task is a collection of tasks, some of which must be completed before than others begin. The precedence relationships between tasks are commonly defined in a directed acyclic graph known as the task graph .

Typology of Parallel Tasks There exist several versions of PTs depending on their execution on a parallel and distributed system: 1. Rigid when the number of processors to execute the PT is fixed a priori. This number can either be a power of 2 or any integer number. In this case, the PT can be represented as a rectangle in a Gantt chart. 2. Moldable when the number of processors to execute the PT is not fixed but determined before the execution. As in the previous case this number does not change until the completion of the PT. 3. In the most general case, the number of processors may change during the execution. In this case, the PTs are flexible.

Task Graphs A group of tasks that can be executed in parallel Vertex(task node) Edge(task link) There are two main ways to build a task graph of PTs: 1. The user has a relatively good knowledge of its application and is able to provide the graph (top–down approach), 2. The graph is built automatically from a larger graph of sequential tasks generated at runtime (down–top).

A Deterministic module In a deterministic model, the execution time for each task and the precedence relations between them are known in advance. This information is depicted in a directed graph, usually known as the task graph.

A Deterministic module Below we have seven tasks with the corresponding duration and their precedence relations Even if the task graph is a simplified representation of a parallel program execution, it provides a base for static allocation of processors.

A Deterministic module by Gantt Chart A schedule is an allocation of tasks to processors which can be shown by a Gantt chart. In a Gantt chart, the initiation and ending times for each task running on the available processors are shown and the makespan (total execution time of the parallel program) of the schedule can be easily resultant. The Gantt chart in an example, resulted of applying the list scheduling algorithm to the task graph, with the priority list L = [T1, T2, T3, T4, T5, T6, T7].

A Deterministic module by Gantt Chart Below shows a Gantt chart corresponding to one possible schedule of the parallel tasks of the task graph of example onto three processors. By simple observation we notice a makespan of 9. As we can see some simple scheduling problems can be solved to optimality in polynomial time while others can be computationally inflexible.

C# Example(Three Tasks in Parallel)

Complexity of scheduling Parallel Task One of the assumptions made in classical scheduling theory is that a task is always executed by one processor at a time. With the advances in parallel algorithms, this assumption may not be valid for future task systems. The complexity of scheduling Parallel Task Systems to minimize the schedule length is examined.

Complexity of scheduling Parallel Task For no preemptive scheduling, it is shown that the problem is strongly NP-hard even for two processors when the precedence constraints consist of a set of chains. For preemptive scheduling, it is shown that the problem is strongly NP-hard for arbitrary number of processors for a set of independent tasks. Over all it is shown that it is NP-hard.

Conclusion The allocation of a number of parallel tasks in parallel supporting environments, multiprocessors or multicomputer, is a difficult and important issue in computer systems As we are interested in scheduling of several tasks graphs onto a reasonable number of processors, in many cases we would be content with polynomial time scheduling algorithms that provide good solutions.

References OpenMP, http://openmp.org A. Khemka and R. K. Shyamasundar, “An optimal multiprocessor real-time scheduling algorithm,” J. Parallel Distrib.

Question?