COMP 705: Advanced Parallel Computing (Fall, 2017)

This page subject to updates/changes.

[Return to Mary Thomas's Website]


Course Information:

Instructor:Mary Thomas
Meeting Time:Mon/Weds, 4:00 - 5:15 pm
Office Hours:Mon/Weds, 5:30 - 6:30 pm

Course Links:


Useful Links:


Course Description:

Students will learn to develop applications using parallel tools and concepts, including: libraries; numerical methodology; optimization tools; visualization of results; MPI and GPU computing models. Applications will be conducted on both the CSRC student cluster and NSF XSEDE computing resources.

COMP/CS 705 is hands-on, with weekly and semi-weekly programming assignments.

The course will consist of the following modules (subject to change):

  • Module 1: HPC Overview/Exascale computing concepts
  • Module 2: MPI Programming: 2D-3D communicators, halo exchange, datatypes; Iterative solvers, performance
  • Module 3: Accessing Exascale Resources
  • Module 4: Acceleration (GPU / OpenMP)
  • Module 5: Parallel File I/O and Data Visualization


Course Prerequisites:

  • COMP 705 or CS 705, or equivalent parallel programming experience.
  • In-depth knowledge of the following parallel programming models is required
    • The Message Passing Interface (MPI)
    • GPU/CUDA Programming
  • Graduate standing in Computational Science, Computer Science, Engineering, or instructor's approval
  • In-depth knowledge of Unix operating systems and the C programing language is required:
  • Helpful: FORTRAN; OpenMPI and Pthreads; Computer Science 501, 520, 525, Computational Science 526.

Course Attendance:

  • Attendance on the first day of classes is required.
  • Students who are on travel/unable to attend must have a valid excuse and must obtain permission from the instructor in advance. No more than 2 days will be granted.
  • Attendance to all classes is required.

Recommended Textbooks:

© 2017, Mary Thomas - All rights reserved.
OpenContent license defines the copyright on this document.

Live Stats For Website