| 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! |