CECS Home | ANU Home | Search ANU
ANU College of Engineering and Computer Science
Research School of Computer Science
Printer Friendly Version of this Document

UniSAFE

High Performance Scientific Computing

Lecture Notes

Lecture Notes
1: Mon Feb 20 Course Introduction (ppt version)
  • National Computational Infrastructure
  • National Computational Infrastructure National Facility
  • Australia's Academic and Research Network
  • Bunyip
  • 2-3: Wed Feb 22 Computational Science Context (LARGE pptx version)
  • National Computational Science Institute
  • Microsoft Computational Science Laboratory
  • NASA Ames wind tunnels
  • The Earth Simulator
    Project related links
  • Visual Python
  • Visual Python Demos
  • Real time cloth simulation
  • Advanced character physics
  • Approximate models of the real world
  • Large steps in cloth simulation
  • 4: Mon Feb 27 Performance Measuring and Benchmarking (1up version)
  • The Top500
  • SPEC Organisation
  • SPEC2006 Articles
  • TPC Benchmark
  • STREAM Benchmark
  • IO Profiling with strace
  • 5-6: Wed Feb 29 We will finish discussion of performance measurement first
    Project related links
  • Molecular Dynamics: display and potential energy
  • 7: Mon Mar 5 Computing with Real Numbers (1up version)
  • What every ANU Computer Science graduate should know about computer arithmetic!
  • Demo Code
  • IEEE Reference
  • IEEE 754 Floating Point Numbers
  • Disasters caused by arithmetic errors
  • ASCI should use intervals
  • Introduction to Interval Analysis
  • Interval Computations Home Page
  • 8-9: Wed Mar 7 High Performance Microprocessors (1up version)
  • Intel 64 and IA-32 Architectures Optimization Manual Contains large amounts of information on Intel processors from a software optimization perspective.
  • This is quite a detailed tutorial on pipelining. It is directed more towards a course in advanced computer architecture than our course in high performance scientific computing, so I would not expect you to know everything given here.
  • Branch Prediction - taken from reference book "Computer Architecture, A Quantitative Approach" by Hennessy and Patterson.
    Project related links
  • Molecular Dynamics: force, velocity, and movement
  • Here are some sample outputs to help you verify the correctness of your code.
  • -: Mon Mar 12 Canberra Day, no lecture
    10-11: Wed Mar 14 High Performance Microprocessors (continued - see above)
    Project related links
    Here are some useful links to help you understand the Python/C interface:
  • Richard Muller on Python/C Interfacing and his complete course web page.
  • A Python/C API example: Python Code, C code , and Makefile
    More detailed technical material can be found in the following links:
  • Extending Python with C or C++
  • Python/C API Reference Manual
  • 12: Mon Mar 19 Memory Systems (1up version)
  • Dowd on cache - taken from reference book "High Performance Computing" by Kevin Dowd and Charles Severance
  • Hennessy on cache - taken from reference book "Computer Architecture, A Quantitative Approach" by Hennessy and Patterson.
  • Components to Memory Latency by John McCalpin
  • 13-14: Wed Mar 21 Complete lectures on memory systems
    Hardware Performance Counters (1up version)
  • Intel Performance Counter Monitor
  • Performance Analysis and Moinitoring
  • PAPI
  • PCL
    Project related
    We did not get to this material in lectures. We will hold under after mid semester break.
    Towards linear scaling MD (1up version)
  • NAMD Performance
  • 15: Mon Mar 26 Optimizing Compilers (1up version)
  • Compiler Operation and Code Generation, from Ch 5 of Write Great Code Vol 2.
  • An introduction to GCC
  • Intel Compiler Guide
  • Selecting best Sun compiler options
  • Sun Compiler Components (scroll down)
  • 16-17: Wed Mar 28 Loop Optimisation (1up version)
    Project related
  • Cloth Dynamics: Background and modelling
  • Real time cloth simulation
  • Approximate models of the real world
  • Large steps in cloth simulation
  • 18: Mon Apr 2 Mid-Semester Review Lecture
    Wed Apr 4 In Class Mid-Semester Exam
    19: Mon Apr 23 Shared Memory Computers (1up version)

    We will also talk abou the assignment and the mid-semester

    -: Wed Apr 25 ANZAC Day, no lecture
    20: Mon Apr 30 Shared Memory Programming (1up version)

    21-22: Wed May 2 OpenMP (1up version)
  • The OpenMP web site
  • LLNL OpenMP Tutorial
    Project related
  • Cloth Dynamics: OpenGL Implementation
  • Complete OpenGL Tutorial
  • 23: Mon May 7 Loop vectorization/Streaming SIMD Extensions (1up version)
  • A Guide to Vectorization with Intel C++ Compilers
  • Intel C++ Intrinsics Reference
  • 24-25: Wed May 9 The Intel x86 story (1up version)
    26: Mon May 14 We will finish discussion the Intel architecture evolution and OpenMP. If time we will also look at the mid-semester.
    27-28: Wed May 16 Complete OpenMP Discussion
    (We will discuss the OpenMP Flush operation - using lecture notes from Vivek Sarkar)
    From MD Project
    Towards linear scaling MD (1up version)
  • NAMD Performance
  • Short course on FMM by Beatson and Greengard (just for interest) HPC Futures
  • 29: Mon May 21 Conclude discussion of linear scaling from previous lecture

    Discussion around the presentation by Jack Dongarra on future of high performance computing

    The following relates to programming languages for HPC and are just for interest:
    Fortran/C/Java
  • Fortran Pioneers (New York Times)
  • Brief History of Fortran
  • Fortran2003
  • User notes on Fortran programming. History of Fortran and comparison with C.
  • Petition to retire fortran!
  • Java and Numerical Computing
  • Java at Middle Age: Enabling Java for Computational Science
  • Benchmarking Java agains C and Fortran for Scientific Applications
    Some Future Prospects
  • Unified Parallel C
  • Titanium
  • Co-Array Fortran
  • DARPA High Productivity Computing Systems Initiative lead to three programming languages:
  •     Chapel
  •     Fortress
  •     X10
    The X10 Option
  • ANUChem (Work at ANU in collaboration with IBM Research US)
  • Concurrent Programming for Modern Architectures
  • X10 Milestone Review
  • HPC Challenge Submission for X10
  • Wed May 23 Optional visit to the National Facility of the National Computational Initiative. Please go directly to the foyer of the Leonard Huxley Building and be there by 11.15am. Note that it will take you around 15minutes to walk there from the CSIT building.
    30: Mon May 28 Conclude and review
    31-32: Wed May 30 Conclude and review
    9:15 June 22nd MH_G051: Long and Very Hard Exam!

    • Putty (to provide terminal from a Windows PC in the lecture theatre)