ECE574: Cluster Computing

University of Maine ECE

Spring 2024

Instructor: Vincent Weaver
The class meeting time is Tues/Thurs at 11am-12:15pm.
The meeting place is Barrows 133.
Final exam: there is no final exam for this course.

Office hours:

Syllabus

ece574_2024s.pdf

Official Course Description

Advances in high-end computational technology continue to bring the digital revolution into academic, industrial and commercial areas. A popular approach for achieving high performance for these application domains is to use parallel computers. Introduces the primary parallel computer architectures, as well as the programming techniques applicable to concurrent, parallel and distributed computations. Students will gain experience in developing parallel computing solutions for challenging problems. Lec 3. (Offered once every two years - Spring.)

Class Schedule

TuesdayThursday
Week 1 16 January
Intro to Cluster Computing
Lecture 1 notes
18 January
Top500 List, Performance
Lecture 2 notes
Week 2 23 January
Speedup/Scaling/Performance Measurement
Lecture 3 notes
25 January
Clusters / Job Scheduling / SLURM
Lecture 4 notes
Week 3 30 January
Computer Architecture Review / CPU Parallelism
Lecture 5 notes
1 February
Convolution,SMT/SMP/NUMA
Lecture 6 notes
Week 4 6 February
Multi-Threading
Lecture 7 notes
8 February
Pthreads/Locking
Lecture 8 notes
Lecture 8 sample code
Week 5 13 February
OpenMP
Lecture 9 notes
15 February
OpenMP Examples
Lecture 10 notes
Lecture 10 sample code
Week 6 20 February
Distributed Systems / MPI
Lecture 11 notes
22 February
More MPI / Examples
Lecture 12 notes
Lecture 12 sample code
Week 7 27 February
MPI Examples, HW#6 Guide
Lecture 13 notes
29 February
First Midterm
Week 8 5 March
Reliability
Lecture 14 notes
7 March
Fault Tolerance / Checkpointing
Lecture 15 notes
Week 9 12 March
Spring Break
14 March
Spring Break
Week 10 19 March
Accelerators / GPUs
Lecture 16 notes
21 March
GPGPUs
Lecture 17 notes
Week 11 26 March
CUDA
Lecture 18 notes
Lecture 18 sample code
28 March
Power/Energy in Clusters
Lecture 19 notes
Week 12 2 April
Other Accels, OpenCL
Lecture 20 notes
Lecture 20 sample code
4 April
Snowstorm
Week 13 9 April
Virtualization, Cloud, Python
Lecture 21 notes
11 April
Big Data, Cluster Filesystems
Data Analysis, Hadoop, Spark
Lecture 22 notes
Week 14 16 April
Second Exam
18 April
The future of HPC, Next Stop: Zettascale
Lecture 23 notes
Week 15 23 April
Project Presentations
25 April
Project Presentations

Homework Assignments


Project


Relevant Papers


Optional Reading


Back to my homepage
Last updated 18 April 2024, 16:53