ECE574: Cluster Computing

University of Maine ECE

Fall 2026

Instructor: Vincent Weaver
The class meeting time is Mon/Wed/Fri at 11:00am-11:50am.
The meeting place is Barrows 133.
Final exam: there is no final exam for this course.

Office hours:

Syllabus

ece574_2026f.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 31 August
Intro to Cluster Computing
Lecture 1 Notes
2 September
Cluster Computing Background
Lecture 2 Notes
4 September
Top500 List
Lecture 3 Notes
Week 2 7 September
No Class, Labor Day
9 September
Speedup/Scaling/Performance Measurement
Lecture 4 Notes
11 September
Performance Counters / SLURM
Lecture 5 Notes
Week 3 14 September
No Class, NSF Workshop
16 September
Cluster Building / Job Scheduling
Computer Architecture Review
Lecture 6 Notes
18 September
Sobel Convolution
Lecture 7 Notes
Week 4 21 September
Comp Arch Review -- Superscalar, OoO
Lecture 8 Notes
23 September
Comp Arch Review -- CMP/SMT/NUMA
Lecture 9 Notes
25 September
SIMD/Vector Math
Lecture 10 Notes
Week 5 28 September
Multi-Threading
Lecture 11 Notes
30 September
Locking
Lecture 12 Notes
2 October
Pthreads
Lecture 13 Notes
Sample Code
Week 6 5 October
OpenMP Intro
Lecture 14 Notes
7 October
OpenMP: Work Sharing
Lecture 15 Notes
9 October
OpenMP Examples
Lecture 16 Notes
Sample Code
Week 7 12 October
Fall Break
14 October
Distributed Systems, Interconnects
Lecture 17 Notes
16 October
MPI
Lecture 18 Notes
Week 8 19 October
First Midterm
21 October
No Class -- Engineering Job Fair
23 March
MPI Examples
Lecture 19 Notes
Sample Code
Week 9 26 October
MPI HW Hints / HPC Reliability
Lecture 20 Notes
28 October
Hardware Faults / SEUs
Lecture 21 Notes
30 October
Fault Tolerance / Checkpointing
Lecture 22 Notes
Week 10 2 November
Accelerators / GPU Background
Lecture 23 Notes
4 November
GPGPU
Lecture 24 Notes
6 November
NVIDIA/CUDA Programming
Lecture 25 Notes
Week 11 9 November
More CUDA
Lecture 26 Notes
Sample Code
11 November
Veteran's Day
13 November
Virtualization, Cloud, Containers
Week 12 16 November
Python, Big Data
18 November
Cluster Filesystems, Hadoop, Spark
20 November
Other Accels, OpenCL
Week 13 23 November
????
25 November
Thanksgiving
27 November
Thanksgiving
Week 14 30 November
The future of HPC, Next Stop: Zettascale
2 December
Exam Review
4 December
Second Exam
Week 15 7 December
Project Presentations
9 December
Project Presentations
11 December
Project Presentations

Homework Assignments


Project


Using ssh/scp/sftp to Connect to the Server and Transfer Files

See this document: Using SSH in ECE574

Guide to Installing/Using PAPI

See this document: Cluster PAPI Guide

Relevant Papers


Optional Reading


Back to my homepage
Last updated 9 November 2026, 13:30