Parallel Programming - PowerPoint PPT Presentation

About This Presentation
Title:

Parallel Programming

Description:

Parallel Programming – PowerPoint PPT presentation

Number of Views:16
Avg rating:3.0/5.0
Slides: 20
Provided by: csVu
Category:

less

Transcript and Presenter's Notes

Title: Parallel Programming


1
Parallel Programming
  • Henri Bal
  • (bal_at_cs.vu.nl)
  • Vrije Universiteit
  • Faculty of Sciences
  • Amsterdam

2
Overview
  • What is parallel programming?
  • Why do we need parallel programming?
  • Organization of this course
  • Practicum Parallel Programming

3
ICWall
  • A large display suitable for
  • Education (classroom)
  • Modern scientific applications thatneed to
    visualize large data-sets
  • 3D applications

4
ICWall an "off-the-shelf" video wall
  • High-end graphics is very expensive
  • Use tiled display with many projectors
  • Use standard (inexpensive) components
  • 9 PCs, graphic and network cards, 16 projectors
  • Similar idea as cluster computing, but applied
    to graphics
  • Current ICWall is strongly simplified version
  • 1 PC with 2 projectors

5
(No Transcript)
6
Parallel Programming
  • Sequential programming
  • Single thread of control
  • Parallel programming
  • Multiple threads of control
  • Why parallel programming?
  • Eases programming? Not really.
  • Performance? Yes!

7
Famous quote
  • Parallel programming may do something to revive
    the pioneering spirit in programming,which
    seems to be degenerating intoa rather dull and
    routine occupation
  • S. Gill, Computer Journal, 1958

8
Why do we need parallel processing?
  • Many applications need much faster machines
  • Sequential machines are reaching their speed
    limits
  • Moores Law (1975) Circuit complexity doubles
    every 18 months
  • Using many transistors effectively to increase
    performance becomes critical problem
  • Memory becomes a bottleneck
  • DRAM access times improve only 10 per year
  • Caches more and more important

9
Parallel processing
  • Use multiple processors to solve large problems
    fast
  • Also gives more cache memory and aggregate memory
    bandwidth
  • Microprocessors are getting cheaper and cheaper
  • Cheap multiprocessors and multicore CPUsbring
    parallel processing to the desktop!

10
History
  • 1950s first ideas (see Gills quote)
  • 1967 first parallel computer (ILLIAC IV)
  • 1970s programming methods, experimental machines
  • 1980s parallel languages (SR, Linda, Orca),
    commercial supercomputers
  • 1990s software standardization (MPI), clusters,
    large-scale machines (Blue Gene)
  • 2000s grid computing combining resources
    world-wide (Globus)
  • Now much research on multi-cores, Graphical
    Processor Units (GPUs), IBM Cell, .

11
Large-scale parallel machines
  • Many parallel machines exist
  • See http//www.top500.org
  • Current 1 RoadRunner Cell clusterwith 122400
    cores
  • 2 is IBM BlueGene/L with 212992 cores

131072
131072
12
Challenging Applications
  • Modeling ozone layer, climate, ocean
  • Quantum chemistry
  • Protein folding
  • General computational science
  • Aircraft modeling
  • Handling use volumes of data from scientific
    instruments
  • Lofar (astronomy)
  • LHC (CERN, high-energy physics)
  • Computer chess
  • Analyzing multimedia content
  • Generating movies

13
Application areas
  • Engineering and design
  • Scientific applications
  • Commercial applications (e.g., transactions,
    databases)
  • Embedded systems (e.g., cars)
  • This class focuses on scientific applications

14
About this Course
  • Goal Study how to write programs that run in
    parallel on a large number of machines.
  • Focus on programming methods, languages,
    applications
  • Focus on distributed-memory (message passing)
    machines, not (yet) on multi-cores, special
    purpose (GPU, Cell) machines
  • Prerequisites
  • Some knowledge about sequential languages
  • Little knowledge about networking and operating
    systems

15
Aspects of Parallel Computing
  • Algorithms and applications
  • Programming methods, languages, and environments
  • Parallel machines and architectures

16
Course Outline
  • Introduction in algorithms and applications
  • Parallel machines and architectures
  • Overview of parallel machines, trends in
    top-500
  • Cluster computers, BlueGene
  • Programming methods, languages, and environments
  • Message passing (SR, MPI, Java)
  • Higher-level language HPF
  • Applications
  • N-body problems, search algorithms,
    bioinformatics
  • Grid computing Multimedia content analysis
    on Grids (guest lecture Frank Seinstra)

17
Course Information
  • Examination
  • Written exam based on
  • - Reader available electronically from
    Blackboard
  • - Lectures
  • More information (and slides)
  • http//www.cs.vu.nl/bal/college08.html

18
Practicum Parallel Programming
  • Separate practicum (6 ECTS)
  • Implement ASP SOR algorithms in C/MPI
  • Implement Capture Go search algorithm in
    Java/RMI
  • Test and measure the programs on our DAS cluster

19
More information
  • Register by email to ppp_at_cs.vu.nl (Niels Drost)
    now
  • Starts after this course (mid October)
  • See http//www.cs.vu.nl/pp-cursus/ for a
    complete description
Write a Comment
User Comments (0)
About PowerShow.com