Meeting |
Date |
Topic |
Lecture Material |
Complementary Material |
|
30/4/24 |
Begining of Semester |
|
|
1 |
6/5/24 |
Introduction - Course Overview and requirements |
Administration
Lecutre:lecture01.pdf
For the most recent version please download the file by clicking on this link (dropbox)
|
Parallel Computing Explained In 3 Minutes
Guy Tel-Zur lecture: Introduction to parallel Programming - Message Passing Interface (MPI)
|
|
13/5/24 |
No class - Memorial Day |
|
|
2 |
20/5/24 |
Introduction to Parallel Processing. Basic Message Passing -MPI |
The course virtual machine - instructions how to download and install.
Message Passing Computing
local files: part 1 and part 2.
|
MPI
MPI Tutorials
|
3 |
27/5/24 |
"Virtual Lab"
Getting to know Linux
Hands-on practice withMPI,
Embarrassingly Parallel Computation
Parallel Profilers (Jumpshot, Scalasca) |
Lecture
Example programs:
ring.c
cpi.c
cpi.c(local) |
MPI reference card
Linux tutorials in PDF
|
4 |
3/6/24 |
Performance Tools
Jumpshot,Scalascaoverview(another one), tutorial
Torque-Open-Source Resource Manager
MPI Collective routines
Embarrassingly Parallel Computations
Home assignment #1 |
Tools and demos
Embarrassingly Parallel Computations
(a local and updated version)
|
|
5 |
10/6/24 |
Algorithms:
Partitioning and Divide and Conquer
- Demos: MPI on Windows OS
|
Lecture
Partitioning and Divide and Conquer Strategies
Synchronous Computations
Code: All to all example: c_ex07.c |
More onIterative methods |
6 |
17/6/24 |
Scalapack
some code examples
Home assignment #2 |
Lecture6
Lecture7
code:
oned.c
wave.c
dgemm_example.c
dgemm_demo.c
dgemm-mpi.c
pdgemv.c
mm_pblas.c |
ScaLAPACK: a portable linear algebra library for distributed
memory computers - design issues and performance
|
7 |
24/6/24 |
MPI-2 get and put
Parallel Programming in Shared Memory
- Introduction
- OpenMP
|
Lecture
MPI-2 get and put
cpi2.c
Programming with Shared Memory
A "Hands-On" Introduction to OpenMP, Mattson and Meadows
(a shorter version)
Exercise files:Mattson_OMP_exercises.zip |
OpenMP home
Wikipedia
OpenMP quick reference card
OpenMP in Visual C/C++
"Reap the Benefits of Multithreading without All the Work"
Introduction to OpenMP and
Advanced OpenMP
from: "Programming Techniques for Supercomputers 2011" by Prof. Gerhard Wellein, RRZE HPC Services
|
8 |
1/7/24 |
OpenMP - continued
Home assignment #3
|
Lecture
Hands-On Introduction to OpenMP, Mattson and Meadows, from SC08
(a shorter version)
Shared Memory(Intel)
Profiling OpenMP
|
An Overview of OpenMP - Ruud van der Pas - Sun Microsystems
Shared Memory Programming with OpenMP
|
9 |
8/7/24 |
Sorting Algorithms
OpenMP - continued
Hybrid MPI and OpenMP:
|
Sorting Algorithms
OpenMP Tasking Explained
Advanced OpenMP (version 4.5) and Vectorization
The Roofline model - a demo.
Hybrid MPI+OpenMP
|
|
10 |
12/7/24 |
**** Friday, 08:00-11:00 **** * * * * Virtual via Zoom * * * *
An introduction to HTCondor
Home assignment #4
|
Introduction to Grid Computing
HTCondor
and Pegasus
HTCondor Tutorial
HTCondorWeek 2013:
Basic Introduction to using HTCondor by Karen Miller, Center for High Throughput Computing
if time permits: Pegasus short tutorial
|
|
11 |
15/7/24 |
CilkPlus
Parallel Matlab -MatlabMPI
|
CilkPlus
Open cilk
Parallel Matlab
|
Charles E. Leiserson receives 2014 ACM/IEEE Computer Society Ken Kennedy Award
|
12 |
TBD |
Code modernization and optimization
|
Intel's Xeon Phi
Lecture
Materials thanks to:Colfax Research
Introduction
N-body(slides)
youtube demo
Paper
Talk presentation
An Introduction to OpenACC
|
|
13 |
TBD |
Buffer/TBD...
|
Image Processing
Pipeline computations
Load Balancing and Termination Detection
Numerical Algorithms
Preparation to the exam
Course summary
|
|
|
19/7/24 |
End of Semester |
|
|