Title: Parallel Job Scheduling Algorithms and Interfaces
1Parallel Job SchedulingAlgorithms and Interfaces
- Research Exam for
- Cynthia Bailey Lee
- Department of Computer Science and Engineering
- University of California, San Diego
- May 27, 2004
2Outline
- Introduction
- Problem Overview
- Why does this matter?
- Problem Specification
- History
- Early Approaches
- Backfilling
- Priorities
- Evaluation
- Metrics
- Metric Pitfalls
- User Perspectives
- Future Directions
3What Are We Trying to Do?
Introduction Problem Overview Why
Does This Matter? Problem Specification
Job
System
Blue Horizon
Message-Passing Parallel Scientific Code
System Model
Job Model
Idle space
CFD visualization www.science-computing.de/produc
ts/powerviz.html
4Why Does This Matter?
Introduction Problem Overview Why
Does This Matter? Problem Specification
Systems in the Top500 typically range in price
from 1 million to 50 million
Top500 data www.top500.org
5Problem Specification
Introduction Problem Overview Why
Does This Matter? Problem Specification
- Purpose process a workload parallel batch jobs
- Processor Homogeneity machine consists of N
identical processors - Job Specification processors by requested runtime
- Exclusivity jobs do not share processors
- Non-Preemption once begun, jobs run to completion
- Online jobs arrive stochastically, no knowledge
of future - Accounting there is a scheme to track users'
resource consumption - User Independence users are in competition for
system resources
6Outline
History
- Introduction
- Problem Overview
- Why does this matter?
- Problem Specification
- History
- Early Approaches
- Backfilling
- Priorities
- Evaluation
- Metrics
- Metric Pitfalls
- User Perspectives
- Future Directions
7First Come First Serve(FCFS)
History Early Approaches
Backfilling Priorities
Job 1
Processors
Time
Job 4
Job 3
Job 2
Queue
8Tennis Court SchedulingM93,P04
History Early Approaches
Backfilling Priorities
Job 1
Job 5
Job 2
Job 3
Job 4
Job 6
Processors
Time
Job 7
9EASY BackfillingSCZL96
History Early Approaches
Backfilling Priorities
- Allow backfills when the projected start of first
job in the queue is not delayed - No starvationall jobs will eventually run
- Claim Jobs in the queue are never delayed from
running by jobs submitted to the queue after
them. - Disproved MF01
10Conservative Backfilling
History Early Approaches
Backfilling Priorities
- Allow backfills when the projected starts of all
preceding jobs in the queue are not delayed - Worst-case start time guaranteed at submittal
- Claim guarantees that future arrivals do not
delay previously queued jobs. MF01 - Disproveddepending on semantics of delay
JSC01
11Maui Scheduler JS01
History Early Approaches
Backfilling Priorities
- Prioritiesa function of 20 parameters (dont
read this chart)
- Parameterized backfills
- Backfilling allowed when the projected starts of
the N preceding jobs in the queue are not delayed - lt Maui is deployed on many major systems
12Microeconomic Scheduler SAWP95
History Early Approaches
Backfilling Priorities
- A Unifying Principle
- Influence user behavior through accounting and
charges, allow users to influence system behavior
through payments FR96
Job 1
Processors
Time
13Outline
Evaluation
- Introduction
- Problem Overview
- Why does this matter?
- Problem Specification
- History
- Early Approaches
- Backfilling
- Priorities
- Evaluation
- Metrics
- Metric Pitfalls
- User Perspectives
- Future Directions
14Common Metrics
Evaluation Metrics Metric
Pitfalls User Perspectives
- Makespan
- Utilization
- ResponseTime
- Expansion Factor (Slowdown)
- Bounded Slowdown
- Weighted Response Time
15Metric Pitfallsor 12 Ways to Fool the Masses
When Giving Scheduler Performance Results
(Apologies to B91)
Evaluation Metrics Metric
Pitfalls User Perspectives
- Rely on a single number (e.g. average)
- Dont mention what happens to the unluckiest jobs
CADV02especially avoid focusing on those
hard-to-schedule big jobs SKSS02, EHY02 - Use a workload that is unrealistic and shows off
your schedulers strengths MF01,FN95 - Avoid unpleasant related facts like internal
fragmentation PJN99 - Dont waste time worrying about user-centric
aspects of performance such as fairness and
start-time guarantees MF01 - Focus solely on performance, not user interface
and implementation issues
Citations noted are exemplary cases of doing
the right thing
16Scheduling in Context User Utility Functions
FRSSW97
Evaluation Metrics Metric
Pitfalls User Perspectives
8 am 121pm 5 pm-8 am 9 am
17Outline
Future Directions
- Introduction
- Problem Overview
- Why does this matter?
- Problem Specification
- History
- Early Approaches
- Backfilling
- Priorities
- Evaluation
- Metrics
- Metric Pitfalls
- User Perspectives
- Future Directions
18Scheduling Explicitly by User Utility Function
L04, FrN95
Future Directions
- If user utility functions can be collected, a
scheduler can be designed to explicitly optimize
the global utility - A survey of users at SDSC demonstrated
feasibility of collection for crude utility
functions - Formulated as a Linear programwith some integer
constraintsfinding the optimal solution is
NP-hard - Commercially available solvers are able to
produce good solutions in reasonable timeframes
(lt 1 minute)
19Empowering the User by Providing More
InformationL04
Future Directions
20User-Provided InputsMF01, LSHS04
Future Directions
- Users are strongly motivated to overestimate in
their requested runtimes - Jobs are killed when the time expires
- Can users be more accurate when not threatened
with death, and with more tangible rewards?
21Outline
Conclusion
- Introduction
- Problem Overview
- Why does this matter?
- Problem Specification
- History
- Early Approaches
- Backfilling
- Priorities
- Evaluation
- Metrics
- Metric Pitfalls
- User Perspectives
- Future Directions