Designing Parallel Operating Systems using Modern Interconnects - PowerPoint PPT Presentation

1 / 19
About This Presentation
Title:

Designing Parallel Operating Systems using Modern Interconnects

Description:

Demanding software will necessarily follow suit and be written for parallelism ... As the degree of parallelism in the underlying hardware will increase, so will ... – PowerPoint PPT presentation

Number of Views:210
Avg rating:3.0/5.0
Slides: 20
Provided by: csHu
Category:

less

Transcript and Presenter's Notes

Title: Designing Parallel Operating Systems using Modern Interconnects


1
Designing Parallel Operating Systems using Modern
Interconnects
Process Scheduling for the Parallel Desktop
Eitan Frachtenberg Los Alamos National
Laboratory 07 December 2005
Computer and Computational Sciences Division Los
Alamos National Laboratory
Ideas that change the world
2
Problem Outline
  • Commodity processors are becoming increasingly
    parallel
  • Demanding software will necessarily follow suit
    and be written for parallelism
  • Parallel programs and complex workloads will
    require specialized OS support
  • Focus on schduling
  • Case studies and lessons learned from the HPC
    world

3
Hardware Trends
  • Moores law cannot continue forever
  • Annual single-core performance growth down from
    50-60 to 15
  • Power and efficiency considerations
  • More efficient to have multiple, slower threads
  • Resulting in an alphabet soup of technologies
  • CMP, SMT, SMP, HT,

4
Chip Parallelism
5
Software Trends
  • Development of commodity parallel software
    stifled
  • No incentives (single-core performance growth)
  • Difficult to develop parallel code
  • However, with parallel commodity hardware,
    parallel code will be the only way to extract
    additional performance
  • Software makers traditionally vied to exploit
    additional performance and hardware advances
  • Parallel paradigm ? Object Oriented paradigm?
  • Modularity, responsiveness, resource overlapping

6
Commodity Parallel Software
  • Engineering
  • Games
  • Complex desktop/database searches
  • Content creation, smart video processing
  • Science
  • Finance
  • User interfaces
  • Multitasking

7
Challenges for the OS
  • Scheduling in commodity OSs based on 30-year old
    principles. In particular, little support for
    parallel applications and workloads beyond mere
    resource allocation.
  • Already small SMPs and SMTs expose many
    difficulties.
  • As the degree of parallelism in the underlying
    hardware will increase, so will the scheduling
    requirements.
  • Commodity schedulers are challenged at all levels
    of parallel abstraction
  • Thread
  • SMP / CMP
  • Cluster

8
Parallel Scheduling
  • Parallel scheduling is a complex and active field
    of research with supercomputers and clusters.
  • Many algorithms and implementations exist to deal
    with the main challenge synchronization.
  • However, parallel scheduling techniques are not
    directly applicable to desktops
  • Interactive programs, responsiveness demands
  • Mixed, heterogeneous workloads

9
Scheduling Examples
  • We devised a simple synthetic benchmark to
    demonstrate parallelism effects
  • Various contemporary parallel desktops
  • Parallel programs BSP-style compute and synch
  • Serial programs (stressors) only compute
  • All programs launched together, experiment ends
    when parallel programs finish
  • Two schedulers default Linux and Gang Scheduling

10
HP (Compaq) ES40
  • 4-way Alpha (Linux 2.4)

11
HP (Compaq) ES45
  • 4-way Alpha (Linux 2.6)

12
IBM / Intel
  • 4-way Pentium III (Linux 2.6)

13
Xeon SMP
  • 4-way Xeon MP with HT (Linux 2.6)

14
Interactive Processes
  • Scenario foreground interactive process (e.g.,
    video playback) interrupted by batch background
    process (e.g., virus scan or download client)
  • Even when computing resources are adequate for
    all processes, mis-scheduling the interactive
    process causes unnecessary interruptions

15
Unloaded system
16
Loaded System
17
Scheduler Challenges Summary
  • Processes competing over the same resources
    suffer when coscheduled
  • Collaborating processes suffer when not
    coscheduled
  • Interactive processes require specially-timed
    scheduling
  • The challenge identifying and servicing
    conflicting scheduling requirements

18
Conclusions
  • Commodity computers and their workloads continue
    to evolve, and we seem to be heading for an era
    of ubiquitous parallel computing
  • Complex architectures and workloads pose a new
    challenge to commodity schedulers, that remained
    largely unchanged in the last 30 years
  • To face this rising complexity, schedulers will
    also have to adapt, potentially with more
    sophisticated heuristics.

19
Future Work
  • We are developing scheduling solutions for the
    parallel desktop based on the following
    principles
  • Classification Identify the scheduling
    requirements of processes by monitoring OS
    activity
  • Cooperation Coschedule collaborating processes
  • Separation Schedule apart interfering processes
  • Adaptivity and automatic tuning Dynamically try
    out different combinations and choose the best
Write a Comment
User Comments (0)
About PowerShow.com