Introduction to High Performance Computing

Course Description

ME 344 is an introductory course on High Performance Computing Clusters, providing a solid foundation in parallel computer architectures, cluster operating systems, and performance & optimization techniques. This course will discuss fundamentals of what an HPC cluster consists of, and how we can take advantage of such systems to solve large scale problems in wide ranging applications like computational fluid dynamics, image processing, machine learning and analytics. The course will consist of lectures, practical hands-on homework assignments, and hands-on laboratory work where students will build their own HPC cluster from the ground up. Students will gain exposure to the linux command line, shell scripting, git revision control system, free/open source tools to building, manage. and optimize HPC clusters, resource management and allocation systems, along with compiling and running applications. In addition to classroom instruction and laboratory work, students will has access to the latest cutting-edge hardware and interact with industry experts that manage large scale HPC systems. As it's desirable to have a mix of students, the course will not assume much background, though linux and scripting experience are helpful to complete projects as this is a very hands-on practical application and use of HPC clusters. Students on a systems, computer engineering, or computational track do well with this course.

Course Details

  • Grading Basis: Letter Grade or Credit/No Credit
  • Intensive Studies: This course is offered as part of the Computer Science Intensive. See the Intensive Studies page for more information on how to receive an official Document of Completion.
Group 3GroupGroup 2