Static Process Scheduling Section 5.2 CSc 8320 Alex De Ruiter

Slides:



Advertisements
Similar presentations
Exploiting Deadline Flexibility in Grid Workflow Rescheduling Wei Chen Alan Fekete Young Choon Lee.
Advertisements

Energy-efficient Task Scheduling in Heterogeneous Environment 2013/10/25.
Distributed Systems Major Design Issues Presented by: Christopher Hector CS8320 – Advanced Operating Systems Spring 2007 – Section 2.6 Presentation Dr.
CALTECH CS137 Fall DeHon 1 CS137: Electronic Design Automation Day 19: November 21, 2005 Scheduling Introduction.
Scheduling in Distributed Systems Gurmeet Singh CS 599 Lecture.
CPE555A: Real-Time Embedded Systems
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 14: March 3, 2004 Scheduling Heuristics and Approximation.
Contents College 4 §4.1, §4.2, §4.4, §4.6 Extra literature on resource constrained project scheduling (will be handed out)
A system Performance Model Instructor: Dr. Yanqing Zhang Presented by: Rajapaksage Jayampthi S.
Task Allocation and Scheduling n Problem: How to assign tasks to processors and to schedule them in such a way that deadlines are met n Our initial focus:
Martha Garcia.  Goals of Static Process Scheduling  Types of Static Process Scheduling  Future Research  References.
Distributed Process Scheduling Summery Distributed Process Scheduling Summery BY:-Yonatan Negash.
CISC October Goals for today: Foster’s parallel algorithm design –Partitioning –Task dependency graph Granularity Concurrency Collective communication.
Parallel Simulation etc Roger Curry Presentation on Load Balancing.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Parallel Programming in C with MPI and OpenMP Michael J. Quinn.
By Group: Ghassan Abdo Rayyashi Anas to’meh Supervised by Dr. Lo’ai Tawalbeh.
1 IOE/MFG 543 Chapter 7: Job shops Sections 7.1 and 7.2 (skip section 7.3)
Iterative Flattening in Cumulative Scheduling. Cumulative Scheduling Problem Set of Jobs Each job consists of a sequence of activities Each activity has.
Summary for Chapter 5 --Distributed Process Scheduling
Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems.
Scheduling Parallel Task
Summary :- Distributed Process Scheduling Prepared BY:- JAYA KALIDINDI.
Distributed Real-Time systems 1 By: Mahdi Sadeghizadeh Website: Sadeghizadeh.ir Advanced Computer Networks.
Task Alloc. In Dist. Embed. Systems Murat Semerci A.Yasin Çitkaya CMPE 511 COMPUTER ARCHITECTURE.
VOLTAGE SCHEDULING HEURISTIC for REAL-TIME TASK GRAPHS D. Roychowdhury, I. Koren, C. M. Krishna University of Massachusetts, Amherst Y.-H. Lee Arizona.
 Escalonamento e Migração de Recursos e Balanceamento de carga Carlos Ferrão Lopes nº M6935 Bruno Simões nº M6082 Celina Alexandre nº M6807.
1 Scheduling CEG 4131 Computer Architecture III Miodrag Bolic Slides developed by Dr. Hesham El-Rewini Copyright Hesham El-Rewini.
Optimal Power Control, Rate Adaptation and Scheduling for UWB-Based Wireless Networked Control Systems Sinem Coleri Ergen (joint with Yalcin Sadi) Wireless.
Chapter 3 Parallel Algorithm Design. Outline Task/channel model Task/channel model Algorithm design methodology Algorithm design methodology Case studies.
ROBUST RESOURCE ALLOCATION OF DAGS IN A HETEROGENEOUS MULTI-CORE SYSTEM Luis Diego Briceño, Jay Smith, H. J. Siegel, Anthony A. Maciejewski, Paul Maxwell,
1 Distributed Process Scheduling: A System Performance Model Vijay Jain CSc 8320, Spring 2007.
Static Process Schedule Csc8320 Chapter 5.2 Yunmei Lu
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 March 01, 2005 Session 14.
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 12: February 13, 2002 Scheduling Heuristics and Approximation.
GRID’2012 Dubna July 19, 2012 Dependable Job-flow Dispatching and Scheduling in Virtual Organizations of Distributed Computing Environments Victor Toporkov.
Graph Algorithms. Definitions and Representation An undirected graph G is a pair (V,E), where V is a finite set of points called vertices and E is a finite.
Scheduling policies for real- time embedded systems.
Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned.
Chapter 101 Multiprocessor and Real- Time Scheduling Chapter 10.
Stochastic DAG Scheduling using Monte Carlo Approach Heterogeneous Computing Workshop (at IPDPS) 2012 Extended version: Elsevier JPDC (accepted July 2013,
 A System Performance Model  Static Process Scheduling  Dynamic Load Sharing and Balancing  Real-Time Scheduling.
1 Andreea Chis under the guidance of Frédéric Desprez and Eddy Caron Scheduling for a Climate Forecast Application ANR-05-CIGC-11.
Resource Mapping and Scheduling for Heterogeneous Network Processor Systems Liang Yang, Tushar Gohad, Pavel Ghosh, Devesh Sinha, Arunabha Sen and Andrea.
Summary :-Distributed Process Scheduling Prepared By:- Monika Patel.
6. Application mapping 6.1 Problem definition
CSC 8420 Advanced Operating Systems Georgia State University Yi Pan.
1 Job Scheduling for Grid Computing on Metacomputers Keqin Li Proceedings of the 19th IEEE International Parallel and Distributed Procession Symposium.
Lecture 4 TTH 03:30AM-04:45PM Dr. Jianjun Hu CSCE569 Parallel Computing University of South Carolina Department of.
Real-Time Support for Mobile Robotics K. Ramamritham (+ Li Huan, Prashant Shenoy, Rod Grupen)
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 March 03, 2005 Session 15.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems RMS and EDF Schedulers.
Distributed Process Scheduling : A Summary
CS 484 Load Balancing. Goal: All processors working all the time Efficiency of 1 Distribute the load (work) to meet the goal Two types of load balancing.
Module 2 Overview of Real Time System Scheduling
CSCI1600: Embedded and Real Time Software Lecture 24: Real Time Scheduling II Steven Reiss, Fall 2015.
Static Process Scheduling
Pipelined and Parallel Computing Partition for 1 Hongtao Du AICIP Research Nov 3, 2005.
Efficient Load Balancing Algorithm for Cloud Computing Network Che-Lun Hung 1, Hsiao-hsi Wang 2 and Yu-Chen Hu 2 1 Dept. of Computer Science & Communication.
A System Performance Model Distributed Process Scheduling.
Introduction to Real-Time Systems
A stochastic scheduling algorithm for precedence constrained tasks on Grid Future Generation Computer Systems (2011) Xiaoyong Tang, Kenli Li, Guiping Liao,
Genetic algorithms for task scheduling problem J. Parallel Distrib. Comput. (2010) Fatma A. Omara, Mona M. Arafa 2016/3/111 Shang-Chi Wu.
COMP7330/7336 Advanced Parallel and Distributed Computing Task Partitioning Dynamic Mapping Dr. Xiao Qin Auburn University
Pradeep Konduri Static Process Scheduling:  Proceedance process model  Communication system model  Application  Dicussion.
Distributed Process Scheduling- Real Time Scheduling Csc8320(Fall 2013)
Chapter – 5.2 Static Process Scheduling
CHAPTER 8 Operations Scheduling
Parallel Programming in C with MPI and OpenMP
Distributed Process Scheduling: 5.1 A System Performance Model
Parallel Programming in C with MPI and OpenMP
Presentation transcript:

Static Process Scheduling Section 5.2 CSc 8320 Alex De Ruiter

The Book: Static Process Scheduling What is it (classical definition)? The scheduling of a set of partially ordered tasks on a non-preemptive multiprocessor system of identical processors to minimize the overall finishing time (aka. Makespan). [1] Implications: Mapping of processes to processors is determined before execution of a process. Once started, processes stays on processor until completed. -- No preemption -- Process behavior, process execution time, precedence relationships, and communication patterns need to be known before execution.

The Book: Static Process Scheduling Scheduling to optimize makespan has been shown to be NP-complete. So, research is directed toward approximate/heuristic methods. How does static scheduling for distributed systems differ from classical definition? Interprocessor communication is considered to be negligible in classical definition. Definitely not the case in distributed system.

The Book: Static Process Scheduling Goal? Scheduling algorithm that can best balance and overlap computation and communication. Two types proposed by book Precedence Process Model: generally appropriate for user applications where process precedence is explicitly specified by the user. Communication Process Model: generally appropriate for system applications where the scheduling goal is to maximize resource utilization and minimize interprocess communication.

The Book: Precedence Process Model General Goal: minimize overall makespan. Represented by directed acyclic graph (DAG). Critical path: represents the longest execution path in the precedence process DAG.  Possible scheduling strategy is to map all critical path processes onto the same processor.

The Book: Precedence Process Model Three forms:  List Scheduling No processor remains idle if tasks remain  Extended List Scheduling Use LS to distribute without concern for communication delays. Add in communication delays. -- No anticipation  Earliest Task First Earliest schedulable task is scheduled first.

The Book: Precedence Process Model Each node represents a task/execution time combination. Each edge represents a precedence relationship. Each edge also notes the message unit weight. [1]

The Book: Precedence Process Model [1]

The Book: Communication Process Model Why a Communication Process Model?  Processes don't always have an explicit completion time.  Processes don't always have precedence constraints.  Scheduling goal is to maximize resource utilization, minimize interprocess communication, and minimize total execution time.

The Book: Communication Process Model Module Allocation Problem: Used to define “cost” in the Communication Process Module  G: is undirected graph with nodes V and edges E  P: some number of processors  e j (p i ) : execution cost of process j on processor i  c (i,j) (p i,p j ): communication cost between processors i and j Also NP-Complete

The Book: Communication Process Model Approaches:  Minimize communication cost by selecting “Cut Set” with least weight. Cut set represents total cost of interprocessor communication. By selecting for communication cost, concurrency is potentially reduced. Logical conclusion would be to schedule all processes on one processor.  Leads to Maximum Flow / Minimum Cut which represents optimized two processor scheduling selection.

The Book: Communication Process Model Each node represents a processor. Each edge represents a weighted communication cost [1]

The Book: Communication Process Model [1]

The Book: Communication Process Model [1]

The Book: Communication Process Model Heuristic approach for more than one processor:  Define super group S containing all proposed processes.  Define a communication cost threshold where if communication cost between two processes exceeds threshold, both processes are assigned to same processor.  Using Cost(G,P), iteratively combine processes into sub groups from super group S. Optimize for computation and communication cost as each subgroup is produced.  Proceed until all process are removed from S.

The Book: Wrap-up Static process scheduling is imprecise due to problem complexity as number of processors and processes grows. When one remembers that the system need not maintain the static process allocation thanks to subsequent load balancing efforts, best effort approximations prior to process initiation become less significant in the overall system performance.

Today Realtime Grid computing scheduling schemes: Earliest Deadline First (EDF): Highest priority to processes with earliest required deadline [3]. Lest Laxity First (LLF) process are scheduled in non-decreasing order of slack time where slack time is given as the difference between the process's deadline and its remaining computational time. So processes that are closest to exceeding their deadlines go first [3].

Today Random Brokering: Specific process arrival time and process duration are unknown but in general conform to some statistical distribution. Resource assignment guided by known properties of arrival time/ process duration distribution (i.e. duration may conform to power law and arrival time may be represented by Poisson distributuion [2][3] ).

References 1)Randy Chow, Theodore Johnson, “Distributed Operating Systems & Algorithms”, Addison Wesley, pp )Vandy Berten, Joel Goossens, Emmanuel Jeannot, “On the Distribution of Sequential Jobs in Random Brokering for Heterogeneous Computational Grids”, IEEE Transactions on Parallel and Distributed Systems, VOL 17, No. 2, February 2006, Page )“Poisson Distribution”,  Nikolaos D. Doulamis, Anastasios D. Doulamis, Emmanouel A. Varvarigos, Theodora A. Varvarigou, “Fair Scheduling Algorithms in Grids”, IEEE Transactions on Parallel and Distributed Systems, Vol 18, No. 11, November 2007.