Welcome to the SMU HPC Summer Workshop 2018

Welcome to the SMU HPC Summer Workshop site for the tutorials and hands-on exercises associated with the 2018 SMU HPC Summer workshop, sponsored by the SMU Center for Scientific Computation. While this workshop will focus on high-performance computing in general as in previous workshops, these topics will be tuned to computing on SMU’s cluster “ManeFrame II”.


If you haven’t registered yet, please do so here.


This week-long workshop is intended to be a general overview of key topics in high-performance computing (HPC). The workshop is generally divided by day into discrete areas that build upon each other. The workshop begins with an introduction to HPC in general, UNIX, and SMU’s cluster “ManeFrame II”. This is followed by an introduction to programming concepts using Bash and Python, compiling, and using version control systems. The third day covers program debugging, profiling and optimization, and continuous integration and testing. The second to last day includes an introduction to parallel programming using OpenMP, Pthreads, and MPI and debugging and profiling parallel applications. The workshop finishes with a introduction to heterogeneous computing and using accelerators via libraries, OpenACC, and OpenCL.

  1. Introduction to High-Performance Computing
  2. Accessing ManeFrame II
  3. Introduction to UNIX
  4. Using ManeFrame II
  1. Introduction to Programming Concepts
  2. Scripting with Bash and Python
  3. Compiling Programs
  4. Version Control Systems
  1. Debugging Programs
  2. Profiling and Optimizing Programs
  3. Jupyter Notebooks
  4. Introduction to TensorFlow on M2 & MNIST
  1. Introduction to Parallel Programming Concepts
  2. OpenMP Introduction & Shared Memory Parallel Programming with OpenMP
  3. MPI Introduction & Distributed Memory Parallel Programming with MPI
  4. Debugging and Profiling Parallel Programs
  1. Introduction to Heterogeneous Programming Concepts
  2. University Data Center (UDC) Tour
  3. Accelerating Applications
  4. Accelerator Offloading Using OpenACC

Daily Schedule

Session A of each day is an overview of topics to be covered that day. Remaining sessions of the day detail specific usage of particular tools with half of the session time being lecture and half being hands-on tutorials.

Session Times
Session A 9:00 AM - 10:15 AM
Break 10:15 AM - 10:45 AM
Session B 10:45 AM - 12:00 PM
Lunch 12:00 PM - 1:30 PM
Session C 1:30 PM - 2:45 PM
Break 2:45 PM - 3:15 PM
Session D 3:15 PM - 4:30 PM