Date
|
Topic
|
Materials
|
08/27/2013
|
Computational Science
Linux
|
Intro to Computational Science slides
Intro to Linux slides Exercises matmult.c
Textbook Preface and Introduction
|
08/29/2013 |
Linux Details
Shell Scripting
|
Linux Details slides
Shell Scripting slides Shell Scripting practice
Textbook Chapter 18
|
09/03/2013 |
Fortran Intro |
Fortran Background
Examples: factorial.f90 sieve.f90
|
09/052013 |
Fortran90 Details
Make
|
Fortran90 Tutorial at MTU
Fortran90 Tutorial at Rice
Make at Software Carpentry
Textbook Chapter 20
Makefile for a simple Fortran project
|
09/10/2013 |
Introduction to C |
Practical Programming in C at MIT
Introduction to C slides by Fred Kuhns
C Exercises
|
09/12/2013 |
Introduction to C++ |
C++ Background slides
C++ Tutorial at cpluscplus.com
Introduction to C++ at MIT
Object-Oriented Programming videos at Software Carpentry
|
09/17/2013
(no formal class meeting;
work on your own)
|
Introduction to Python |
Watch Python videos at Software Carpentry
Do the exercises at http://www.codeacademy.com/learn (Click on Python)
|
9/19/2013 |
Source Code Control |
Textbook Chapter 21
Watch Version Control videos at Software Carpentry
Source Code Control with Subversion by Umayanganie Munipala
|
09/24/2013 |
Von Nuemann architecture, modern floating point units, pipelining, ILP |
Textbook Chapter 1 sections 1.1-1.2
CPU Design and Its Effects on Performance by Dr. Arunagiri
|
09/26/2013 |
Multicore architectures
locality and data reuse
|
Textbook Chapter 1 sections 1.4 -1.5
Multicore slides by Dr. Arunagiri
|
10/01/2013 |
Power consumption of microprocessors and roofline model
|
Textbook Chapter 1 sections 1.6-1.7
Roofline Model by Dr. Arunagiri
The presentations referenced in the lectures are Power Consumption of Microprocessors and Roofline Model.
|
10/03/2013 |
Memory hierarchies
|
Textbook Chapter 1 section 1.3
Slides
|
10/08/2013 |
Introduction to Parallel Computing |
Textbook Chapter 2 sections 2.1-2.3
Slides
|
10/10/2013
|
More on memory hierarchy |
Slides |
10/15/2013 |
Shared memory programming with OpenMP |
Textbook Chapter 2 section 2.5.2
Slides
Cyberinfrastructure Tutor
Parallel Computing Explained
Introduction to OpenMP
|
10/17/2013 |
Distributed memory programming with MPI |
omp_pi_wrong.f
Cyberinfrastructure Tutor
Introduction to MPI
MPI Example 1 example1.c
|
10/22/2013 |
More MPI
Hybrid MPI+OpenMP Programming
|
Intro to MPI at Dartmouth
Hybrid and PGAS
Example code: hello-hybrid.c
Example code: jacobi_mpiomp.f90
Input file: indata
Example code: mmm-upc.c
|
10/24/2013 |
Introduction to GPU Programmiing
Midterm Review
|
Introduction to GPU Programming slides
Introduction to OpenACC slides
|
10/29/2013 |
Midterm Exam |
|
10/31/2013 |
Amdahl's Law
Profiling
Using compiler optimization
|
Amdahl's Law slides
Gprof tutorial
jacobi.c
GCC Intro
|
11/05/2013 |
Serial code optimization |
Slides
Matrix multiply slides
Vectorization slides
GCC Auto-vectorization webpage
|
11/07/2013 |
Block matrix algorithms
PAPI
|
Automatic Blocking of Nested Loops by Schreiber and Dongarra
Intro to PAPI slides
PAPI website
|
11/12/2013 |
Computer Arithmetic
Computational Linear Algebra
|
Computer arithmetic slides
Computational linear algebra slides
Dense linear algebra libraries
|
11/14/2013 |
Sparse Linear Algebra
Iterative Methods
|
sparse slides
iterative method slides
|
11/19/2013 |
No class - work on projects |
|
11/21/2013 |
No class - work on projects |
|
11/26/2013 |
More sparse linear algebra
PETSc
|
Direct and Iterative methods
Conjugate Gradients without the Agonizing Pain by Jonathan Skewchuk
PETSc tutorial
PETSc heat equation example
|
12/03/2013 |
Heat Equation project |
|
12/05/2013 |
Fast Fourier Transform
Review for Final
|
FFT slides
Final exam review guide
|
Comments (0)
You don't have permission to comment on this page.