Computer Science and Engineering Parallel and Distributed Processing CSE 8380 March 03, 2005 Session 15.

Slides:



Advertisements
Similar presentations
Fakultät für informatik informatik 12 technische universität dortmund Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund,
Advertisements

Washington WASHINGTON UNIVERSITY IN ST LOUIS Real-Time: Periodic Tasks Fred Kuhns Applied Research Laboratory Computer Science Washington University.
Parallel List Ranking Advanced Algorithms & Data Structures Lecture Theme 17 Prof. Dr. Th. Ottmann Summer Semester 2006.
Covers, Dominations, Independent Sets and Matchings AmirHossein Bayegan Amirkabir University of Technology.
A 2 L Heuristic Algorithm for Scheduling Tasks on Non-Identical Machines Alexander C. Tubbs Alison L. Steppig Laura A. Hemker Southern Illinois University.
Routing in a Parallel Computer. A network of processors is represented by graph G=(V,E), where |V| = N. Each processor has unique ID between 1 and N.
Reconfigurable Computing S. Reda, Brown University Reconfigurable Computing (EN2911X, Fall07) Lecture 10: RC Principles: Software (3/4) Prof. Sherief Reda.
CS3773 Software Engineering Lecture 8 Software Planning and Estimation.
Chapter 5 CPU Scheduling. CPU Scheduling Topics: Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling.
Advanced Topics in Algorithms and Data Structures Classification of the PRAM model In the PRAM model, processors communicate by reading from and writing.
PRAM Models Advanced Algorithms & Data Structures Lecture Theme 13 Prof. Dr. Th. Ottmann Summer Semester 2006.
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.
Process Scheduling for Performance Estimation and Synthesis of Hardware/Software Systems Slide 1 Process Scheduling for Performance Estimation and Synthesis.
UET Multiprocessor Scheduling Problems Nan Zang
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Lecture 11. Matching A set of edges which do not share a vertex is a matching. Application: Wireless Networks may consist of nodes with single radios,
Data Flow Analysis Compiler Design Nov. 8, 2005.
On the Task Assignment Problem : Two New Efficient Heuristic Algorithms.
1 of 16 June 21, 2000 Schedulability Analysis for Systems with Data and Control Dependencies Paul Pop, Petru Eles, Zebo Peng Department of Computer and.
Online Scheduling of Precedence Constrained Tasks Yumei Huo Department of Computer Science New Jersey Institute.
Data Flow Analysis Compiler Design Nov. 8, 2005.
Message Passing Systems A Formal Model. The System Topology – network (connected undirected graph) Processors (nodes) Communication channels (edges) Algorithm.
Lecture 11. Matching A set of edges which do not share a vertex is a matching. Application: Wireless Networks may consist of nodes with single radios,
Modified from Silberschatz, Galvin and Gagne ©2009 Lecture 8 Chapter 5: CPU Scheduling.
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 IOE/MFG 543 Chapter 7: Job shops Sections 7.1 and 7.2 (skip section 7.3)
Scheduling Parallel Task
Technische Universität Dortmund Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund, Informatik 12 Germany 2007/12/14.
Message Passing Systems A Formal Model. The System Topology – network (connected undirected graph) Processors (nodes) Communication channels (edges) Algorithm.
CPU-Scheduling Whenever the CPU becomes idle, the operating system must select one of the processes in the ready queue to be executed. The short term scheduler.
Chapter 6: CPU Scheduling
Computer Architecture and Operating Systems CS 3230: Operating System Section Lecture OS-3 CPU Scheduling Department of Computer Science and Software Engineering.
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.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Spring 2015 Mathematics in Management Science Machine Scheduling Problem Statement of MSP Assumptions & Goals Priority Lists List Processing Algorithm.
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 March 08, 2005 Session 16.
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.
An Efficient Algorithm for Scheduling Instructions with Deadline Constraints on ILP Machines Wu Hui Joxan Jaffar School of Computing National University.
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 February 10, 2005 Session 9.
Static Process Scheduling Section 5.2 CSc 8320 Alex De Ruiter
Resource Mapping and Scheduling for Heterogeneous Network Processor Systems Liang Yang, Tushar Gohad, Pavel Ghosh, Devesh Sinha, Arunabha Sen and Andrea.
Chapter 5: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria.
6. Application mapping 6.1 Problem definition
Outline Introduction Minimizing the makespan Minimizing total flowtime
Lecture 4 TTH 03:30AM-04:45PM Dr. Jianjun Hu CSCE569 Parallel Computing University of South Carolina Department of.
Quiz 3: solutions QUESTION #2 Consider a multiprocessor system with two processors (P1 and P2) and each processor has a cache. Initially, there is no copy.
Optimal Algorithms for Task Scheduling Implemented by Ala Al-Nawaiseh Khaled Mahmud.
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.
CSEP 521 Applied Algorithms Richard Anderson Winter 2013 Lecture 3.
Genetic algorithms for task scheduling problem J. Parallel Distrib. Comput. (2010) Fatma A. Omara, Mona M. Arafa 2016/3/111 Shang-Chi Wu.
Planning and Scheduling.  A job can be made up of a number of smaller tasks that can be completed by a number of different “processors.”  The processors.
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 April 28, 2005 Session 29.
Basic Concepts Maximum CPU utilization obtained with multiprogramming
Chapter 6: CPU Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
3: CPU Scheduling Basic Concepts Scheduling Criteria
Chapter5: CPU Scheduling
Chapter 6: CPU Scheduling
Process Scheduling B.Ramamurthy 2/23/2019.
Planning and Scheduling
Planning and Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Richard Anderson Autumn 2015 Lecture 7
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Presentation transcript:

Computer Science and Engineering Parallel and Distributed Processing CSE 8380 March 03, 2005 Session 15

Computer Science and Engineering Scheduling Review Optimal Algorithms without communication Interval Orders 2 Processors Communication Models Optimal Algorithms with communication Heuristics

Computer Science and Engineering Interval Orders A task graph is an interval order when its nodes can be mapped into intervals on the real line, and two elements are related iff the corresponding intervals do not overlap. For any interval ordered pair of nodes u and v, either the successors of u are also successors of v or the successors of v are also successors of u.

Computer Science and Engineering Scheduling interval ordered tasks 1. The number of successors of each node is used as each node’s priority 2. Whenever a processor becomes available, assign it the unexecuted ready task with the highest priority (complexity?)

Computer Science and Engineering Example

Computer Science and Engineering Two Processor Scheduling 1. Assign 1 to one of the terminal tasks. 2. Let labels 1,2,...,j-1 have been assigned. Let S be the set of unassigned tasks with no unlabeled successors. We next select an element of S to be assigned label j. For each node x in S define l(x) as follows: Let y1, y2,...,yk be the immediate successors of x. Then l(x) is the decreasing sequence of integers formed by ordering the set {L(y1), L(y2),..., L(yk)}. Let x be an element of S such that for all x' in S, l(x) ≤ l(x') (lexicographically). Define L(x) to be j. 3. Use L(v) as the priority of task v and ties are broken arbitrary. 4. Whenever a processor becomes available, assign it the unexecuted ready task with the highest priority. Ties are broken arbitrarily.

Computer Science and Engineering Example

Computer Science and Engineering Communication Models Completion Time Execution time Communication time Completion Time as 2 Components Completion Time from the Gantt Chart

Computer Science and Engineering Completion Time as 2 Components Completion Time = Execution Time + Total Communication Delay Total Communication Delay = Number of communication messages * delay per message Execution time  maximum finishing time of any task Number of communication messages  model A Model B

Computer Science and Engineering Number of communication Messages Given a task graph G = (V,E) and its allocation on m processors f, we use proc(v) to refer to the processor to which task v is assigned. Model A: number of messages =the number of node pairs (u,v) such that (u,v)belongs to E and proc(u) ≠ proc(v). Model B: number of messages =the number of processor- task pairs (P,v) such that processor P does not compute task v but computes at least one direct successor of v.

Computer Science and Engineering Completion Time from the Gantt Chart (Model C) Completion Time = Schedule Length This model assumes the existence of an I/O processor with every processor in the system Communication delay between two tasks allocated to the same processor is negligible. Communication delay is counted only between two tasks assigned to different processors

Computer Science and Engineering Example A 1 D 1 E 1 B 1 C 1 Assume a system with 2 processors

Computer Science and Engineering Models A and B Assume tasks A, B, and D are assigned to P1 and tasks C and E are assigned to p2 A B D P1 C E P2 Model A Number of messages = 2 Completion time = Model B Number of messages = 1 Completion time = 3 + 1

Computer Science and Engineering Model C A B CD E Communication Delay P1P

Computer Science and Engineering Optimal Algorithms with Communication Interval orders on n processors In-forests / out-forests on two processors Refer to the lecture and the chapter on scheduling for the details

Computer Science and Engineering Heuristics Discussion of Heuristics Examples Refer to the lecture and the chapter on scheduling for the details