CECS Home | ANU Home | Search ANU
The Australian National University
ANU College of Engineering and Computer Science (CECS)
Department of Computer Science
Printer Friendly Version of this Document
High Performance Scientific Computing COMP4300

Lecture Notes

  • Audio of the lectures is available via webct under comp4300 (for everyone regardless of whether you are in comp4300, comp6430, and honours or PhD student). If you have problems accessing this let me know.

Lecture Notes
30: Mon June 1 Final Review Lecture

  • Copy of ZPL Chapter from Lin and Snyder
  • 29: Tue May 25 Global Arrays, HPF (1up)
  • shmem.c: MPI2 one-sided communication example
  • shmemf.f: Fortran front end to above
  • Global Arrays
  • Lin's notes on HPF
  • HPC++
  • Lin other lecture notes
  • 27-28: Mon May 24 MPI-2 (1up)
  • HPCWire article on MPI
  • MPI 3.0 Forum

  • 26: Tue May 19 This lecture will be given by Ben Elliston also from the Canberra node of the IBM Linux Technology Centre. Ben will talk about implementing OpenMP in to the gcc compiler. Copy of Slides
  • Mark Bull slides on OpenMP 3.0
  • 24-25: Mon May 18 In the first part of this lecture Jeremy Kerr from the Canberra node of the IBM Linux Technology Centre will talk about the Sony, Toshiba, IBM Cell Broadband Engine.
  • IBM Cell Slides
  • IEEE Micro article on Cell's multicore architecture
  • IEEE Micro article on Cell's communication network
  • IBM Cell Resource Site
    Mandelbrot on the Cell
  • The Task
  • Solution part 1
  • Solution part 2
  • Solution part 3
  • Solution part 4
    In what remains I will talk about NVIDIA GPUs and their CUDA programming model. There will be no explicit notes, but we shall look briefly over some of the following
  • NCSA GPU Wksp Presentation (1 up)
  • GPU Workshop
  • 23: Tue May 12 MapReduce (1up) Jay Larson will talk about MapReduce
  • MapReduce: Simplified Data Processing on Large Clusters
  • 21-22: Mon May 11 Working with grids and clouds (1up), Jay Larson will present todays lecture. First we will conclude the previous lecture and have a brief discussion about assigment2.
  • What is the Grid. A three point checklist, paper by Ian Foster
  • Anatony of the Grid: Enabling Scalable Virtual Organizations, paper by Ian Foster, Carl Kesselman and Steven Tuecke
  • What is cloud computing (YouTube!)
  • 20: Tue May 5 Software Distributed Shared Memory ( 1up)
  • ScaleMP
  • SCASH
  • Intel Cluster OpenMP
  • TreadMarks web site
  • TreadMarks paper
  • Adsmith reference site
  • Adsmith paper
  • Commercial use of Linda
  • 18-19: Mon May 4 Continue from previous lecture talking about Memory Consistency (I'd made some changes/corrections the notes). Handed back mid-semester examination and discussed it.
    17: Tue Apr 28 Memory Consistency Models (Revised May 4) ( 1up)
    We rushed through openmp before the break, we will review some of that material first and then move on to memory consistency. I will return the mid-semester exam next monday after dealing with a couple of people who were delayed. The stuff on memory consistency will take some time for you to fully appreciate, but it is fundamental to concurrent and distributed computing. It should also make you reconsider some of the initial material presented in COMP2310!
  • Shared Memory Consistency Models: A Tutorial Sarita V. Adve. Kourosh Gharachorloo
  • Micro-benchmarks for Cluster OpenMP Implementations: Memory Consistency Costs: paper by computer systems group PhD student Jin Wong about memory consistency issues primarily (but not totally) in the context of software distributed shared memory systems.
  • * Tue 7 No lecture (but you have labs this week)
    * Mon 6 Mid Semester Exam in HA G53. Writing starts at 16:05 and ends at 17:55. Exam room open from 15:55. 10 questions, worth total of 80 marks. Write-on exam paper.
    16 Tue Mar 31 Overview of Big Iron Computing and tour of the ANU Supercomputer Facility by Jay Larson. Lecture is at 2pm in Leonard Huxley Theatre. You can tour the facility either before (meet at 1.10pm in the foyer) or after. Note that it will take you about 15mins to walk there from the Computer Science side of campus.
    14-15: Mon Mar 29 Continue pthread lectures from below.

    The OpenMP programming model ( 1up)
  • The OpenMP web site
  • LLNL OpenMP Tutorial

    Discussion and questions related to mid-semester exam.
  • 13: Tue Mar 23 Shared Memory; Programming (1up)
    As noted under Mar 22 lecture the lab work related to this material will not begin until immediately after the mid-semester break.
  • Chapter 6 of Lin and Synder
  • Chapter 8 of Wilkinson and Allen
  • Chapter 7 of Grama, Gupta, Karypis and Kumar
  • POSIX Threads Tutorial from LLNL
  • 11-12: Mon Mar 22 Shared Memory; Hardware (1up)
    The lab work to go with these shared memory lectures will not begin until immediately after the mid-semester break. Don't panic if you are still trying to understand MPI, there are still 2 more MPI labs. We need to start this material so you are ready after mid-semester break and so assignment 2 is not too late.
  • Chapter 2 of Lin and Synder
  • Chapter 2 of Grama, Gupta, Karypis and Kumar
  • SGI Origin architecture
  • AMD Northbridge Architecture

    Synchronous Computations and Barriers (1up)
  • Chapter 6 from Wilkinson and Allen
  • Also in context of shared memory see case study on page 193 of Lin.
  • 10: Tue Mar 17 Discussion about Assignment 1 and if time about relevant Quiz/Exam questions so far
    8-9: Mon Mar 16 Parallelisation via Data Partitioning (1up)
    See chapter 5 of Lin and Snyder.
  • Paper by Salmon and Warren on N-Body Parallelisation (Not examinable!)
  • Chapter 4 in Wilkinson and Allen

    Embarassingly Parallel Problems (1up)
    See chapter 5 of Lin and Snyder.
  • BOINC
  • SETI
  • Folding@home
  • Chapter 3 in Wilkinson and Allen
  • 7: Tue Mar 10 Performance Models (1up)
    Measuring and modeling performance. Mr Amdahl and more! See chapter 3 of Lin and Synder and chapter 5 of Grama, Gupta, Karypis and Kumar.
    MPI visualizatin tools:
  • Jumpshot
  • Vampir
  • 6: Tue Mar 3 Basic Message Passing (1up)
    A quick introduction to MPI, there will be more in lab 1. See also Chapter 7 from the text "Principles of Parallel Programming" (copy of figures). Some references:
  • MPI forum
  • Online MPI-1 Book
  • Chapter 2 in Wilkinson and Allen
  • 4-5: Mon Mar 2 Basic Communications (1up)
    This material lays the ground work for message passing and should make you appreciate the complexities of writing a good message passing library for a given platform. See parts of chapter 2 and 4 in the book by Grama et al for more info.
    3: Tue Feb 24 Overview of Parallel Hardware (1up)
    A quick review of single CPU hardware followed by an overview of parallel hardware issues. Material presented here will be picked up on in later lectures. ...we finished single processors in this lecture. For a very detailed discussion about single processor performance see the reference book by Bryant and O'Hallaron. Chapters 2 and 3 from Lin and Snyder contains an overview of single and multiple processor architectures similar to that outlined here. See also the lecture notes from Calvin Lin:
  • "A success Story: ISA": more details of how parallelism is a key part of the instruction set architecture (ISA) of all modern chips
  • Parallel Architectures: Slide 11 and beyond is relevant at this point
  • Parallel Architectures: you can read, but will understand more after we have discussed cache coherency later in the course
  • 1-2: Mon Feb 23 Unit Introduction (ppt)
  • NCI
  • NF Xe System
  • NF AC system
  • ANU Supercomputer Facility
  • The Bunyip Project
  • The Earth Simulator