Lecture 8: Dispatch Rules

Slides:



Advertisements
Similar presentations
Priority Queues Two kinds of priority queues: Min priority queue. Max priority queue.
Advertisements

COT 4600 Operating Systems Fall 2009 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:00-4:00 PM.
Lecture 6: Job Shop Scheduling Introduction
© J. Christopher Beck Lecture 7: Shifting Bottleneck.
© J. Christopher Beck Lecture 17: Tabu Search.
1 IOE/MFG 543 Chapter 8: Open shops Section 8.1 (you may skip Sections 8.2 – 8.5)
Johnson’s Rule Johnson’s rule: A procedure that minimizes makespan when scheduling a group of jobs on two workstations. Step 1. Find the shortest processing.
Evaluating Heuristics for the Fixed-Predecessor Subproblem of Pm | prec, p j = 1 | C max.
ISE480 Sequencing and Scheduling Izmir University of Economics ISE Fall Semestre.
8.1 Advanced Operating Systems Defeating The Thrashing The RAM is limited. Sometimes, too many processes need large memory allocations and the sum of these.
Lecture 10: Integer Programming & Branch-and-Bound
© J. Christopher Beck Lecture 15: CP Search.
Scheduling Chapter 19.
1 IOE/MFG 543 Chapter 5: Parallel machine models (Sections )
1 Single Machine Deterministic Models Jobs: J 1, J 2,..., J n Assumptions: The machine is always available throughout the scheduling period. The machine.
1 IOE/MFG 543 Chapter 14: General purpose procedures for scheduling in practice Sections : Dispatching rules and filtered beam search.
5: CPU-Scheduling1 Jerry Breecher OPERATING SYSTEMS SCHEDULING.
© J. Christopher Beck Lecture 18: Timetabling with Workforce Capacity.
Scheduling.
Lecture 8: Dispatch Rules
Introduction to LEKIN Gareth Beddoe
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Lecture 5 Operating Systems.
OPERATING SYSTEMS CPU SCHEDULING.  Introduction to CPU scheduling Introduction to CPU scheduling  Dispatcher Dispatcher  Terms used in CPU scheduling.
© J. Christopher Beck Lecture 5: Project Planning 2.
Operational Research & ManagementOperations Scheduling Introduction Operations Scheduling 1.Setting up the Scheduling Problem 2.Single Machine Problems.
SOFTWARE / HARDWARE PARTITIONING TECHNIQUES SHaPES: A New Approach.
Chapter 5 CPU Scheduling Bernard Chen Spring 2007.
1 Short Term Scheduling. 2  Planning horizon is short  Multiple unique jobs (tasks) with varying processing times and due dates  Multiple unique jobs.
© J. Christopher Beck Lecture 6: Time/Cost Trade-off in Project Planning.
© J. Christopher Beck Lecture 17: Introduction to Timetabling.
Lecture 9: Simplified Shifting Bottleneck
Outline Introduction Minimizing the makespan Minimizing total flowtime
© J. Christopher Beck Lecture 25: Workforce Scheduling 3.
Scheduling. Scheduling: The allocation of resources over time to accomplish specific tasks. Demand scheduling: A type of scheduling whereby customers.
Advanced Operating Systems - Spring 2009 Lecture 14 – February 25, 2009 Dan C. Marinescu Office: HEC 439 B. Office.
© J. Christopher Beck Lecture 10: (Full) Shifting Bottleneck.
Parallel Machine Scheduling
Module 2 Overview of Real Time System Scheduling
Heuristic Methods for the Single- Machine Problem Chapter 4 Elements of Sequencing and Scheduling by Kenneth R. Baker Byung-Hyun Ha R2.
1 BECO 2004 When can one develop an FPTAS for a sequential decision problem? with apologies to Gerhard Woeginger James B. Orlin MIT working jointly with.
Lecture Topics: 11/15 CPU scheduling: –Scheduling goals and algorithms.
Production SchedulingP.C. Chang, IEM, YZU. 1 How to schedule ?? How to find 1. an efficient Heuristic? 2. the optimal solution?
Raunak Singh (ras2192) IEOR 4405: Production Scheduling 28 th April 2009.
© J. Christopher Beck Lecture 16: Local Search.
Product A Product B Product C A1A1 A2A2 A3A3 B1B1 B2B2 B3B3 B4B4 C1C1 C3C3 C4C4 Turret lathes Vertical mills Center lathes Drills From “Fundamentals of.
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.
Lecture 5 Scheduling. Today CPSC Tyson Kendon Updates Assignment 1 Assignment 2 Concept Review Scheduling Processes Concepts Algorithms.
Lecture 6 The Rest of Scheduling Algorithms and The Beginning of Memory Management.
Fun with Hyperplanes: Perceptrons, SVMs, and Friends
Approximation Algorithms
Algorithm Design Methods
CHAPTER 8 Operations Scheduling
Lecture 11: Tree Search © J. Christopher Beck 2008.
Approximation Algorithms
Coverage Approximation Algorithms
CPU SCHEDULING.
Richard Anderson Lecture 6 Greedy Algorithms
Lecture 9: Tabu Search © J. Christopher Beck 2005.
Priority Queues An abstract data type (ADT) Similar to a queue
CSE 451: Operating Systems Winter 2003 Lecture 6 Scheduling
Richard Anderson Lecture 7 Greedy Algorithms
CSC 380: Design and Analysis of Algorithms
Planning and Scheduling
Topic 15 Job Shop Scheduling.
IOE/MFG 543 Chapter 14: General purpose procedures for scheduling in practice Sections : Dispatching rules and filtered beam search.
Single Machine Deterministic Models
CSE 542: Operating Systems
CSE 451: Operating Systems Winter 2001 Lecture 6 Scheduling
Real-Time Scheduling David Ferry CSCI 3500 – Operating Systems
Richard Anderson Autumn 2019 Lecture 7
Presentation transcript:

Lecture 8: Dispatch Rules © J. Christopher Beck 2008

Outline A Scheduling Problem What are Heuristic Methods? What is a Dispatch Rule? Trying them out © J. Christopher Beck 2008

Readings P Ch 5.2, C.2, C.3 © J. Christopher Beck 2008

A Scheduling Problem Jobs Processing times J0R0[15]  J0R1[50]  J0R2[60] 1 J1R1[50]  J1R0[50]  J1R2[15] 2 J2R0[30]  J2R1[15]  J2R2[20] Find a schedule that minimizes the makespan (saw this in last lecture, too) © J. Christopher Beck 2008

Why would you use a heuristic method? Heuristic Methods Fast algorithms that result in a schedule usually polynomial run-time What does this mean? Usually no quality guarantee except in very restricted cases e.g., 1-machine sometimes good quality, but can be arbitrarily bad depending on the data for the specific problem Why would you use a heuristic method? © J. Christopher Beck 2008

Dispatch Rules Create a queue of operations for each resource include all operations that can execute at the current time Whenever a machine becomes free: update queues rank activities (based on a [simple] rule) schedule highest priority activity © J. Christopher Beck 2008

Shortest Processing Time (SPT) Always choose the to execute the activity in the queue with the shortest processing time There are many other rules we will look at some of these later in the course © J. Christopher Beck 2008

Weighted Shortest Processing Time (WSPT) Always choose the to execute the activity in the queue with the greatest ratio of weight to processing time Only makes sense if activities have weight © J. Christopher Beck 2008

Dispatch Rules Except in special cases, dispatch rules are not guaranteed to find the optimal solution Often used for very hard (or large) problems were a good solution is “good enough” © J. Christopher Beck 2008

Another Scheduling Problem Jobs Processing times Weights J0R0[15]  J0R1[50]  J0R2[60] w0 = 2 1 J1R1[50]  J1R0[50]  J1R2[15] w1 = 3 2 J2R0[30]  J2R1[15]  J2R2[20] w2 = 5 Find a schedule that minimizes the total weighted completion time w0C0 + w1C1 + w2C2 Use WSPT Ci is the end time of job i There is a slight complication here … © J. Christopher Beck 2008