Skip to content
This repository was archived by the owner on Jul 9, 2025. It is now read-only.

ju-liu/MAE-5032-2025S

Repository files navigation

MAE-5032-2025S High-Performance Computing: Methods and Practices

Instructor

  • Dr. Ju Liu, Assistant Professor of MAE Department
  • Office: Room 1004 North Engineering Building
  • Contact by email

Teaching Assistants

  • Chongran Zhao, Office: Room 1017 North Engineering Building, Contact by email.

Goals

This course aims to give students an in-depth understanding of the modern approach in technical and parallel computing. The students will be guided to operate computers in the Unix/Linux system and learn basic technical computing skills and gain an understanding of compilers, aotumake system, version control, code profiling and debugging, etc. The architecture of computers will be discussed, with focus on memory hierarchy, parallel design, etc. We will discuss numerical analysis to provide a background of the application. The parallel programming based on the message passing interface (MPI) will be discussed. We will also introduce modern scientific computing libraries, including PETSc, VTK, and HDF5.

References:

  • Parallel programming in C with MPI and OpenMP, Michale J. Quinn, 2003
  • Computer systems: a programmer’s perspective, Randal Bryant and David O’Hallaron, 2002
  • Tutorials will be distributed in class

Prerequisites

C and C++ programming language.

Course Schedule:

Week Topic
1 Introduction to HPC
2 Linux/Unix basics: file system, permissions, regular expressions
3 Linux/Unix intermediate: vi editor, bash script programming
4 Serial computer architecture: memory hierarchy
5 Compiler: GCC and optimization flags
6 Makefile and CMake tutorial
7 Version control, Git, and GitHub
8 Code debugging and profiling
9 Numerical analysis basics: linear algebra and PDEs
10 Parallel computer architecture
11 MPI programming: basic MPI calls
12 MPI programming: MPI collective communications
13 MPI programming: performance analysis
14 MPI programming: implementation of matrix-vector multiplication
15 PETSc library
16 VTK for visualization and HDF5 for I/O

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 16