The purpose of the HPC Education and Training program is to provide instruction and training in high performance computing (HPC) to students, P&S employees and faculty. University courses, short workshops and online material are available or in development. Workshops will be available periodically and announced through HPC News. There will be one HPC class each semester starting spring 2014.
Access to the Education Cluster
Instructors and students are encouraged to utilize these facilities for:
- High performance computing needs
- Pursuing personal educational interests
Workshops will be available periodically and will be held in a computer lab and attendees encouraged to logon to a HPC machine and actively participate. Workshops will include:
- How to use the education and research clusters. This workshop is designed to help students and faculty port and run existing applications to these machines that do not use accelerators. Slides from this workshop
- How to use DDT and MAP for program debugging and profiling.
- How to use the Nvidia GPUs.
- Program optimization techniques including the use of the MAP parallel debugger.
- Application specific workshops (e.g. genetics, physics, aerospace engineering)
Visit the News page for a list of HPC workshops.
University Courses Teaching HPC
The following courses are available.
Math 424X, ComS 424X or CprE 424X: Introduction to High Performance Computing.
This undergraduate course teaches the basic concepts of serial and parallel computing and teaches students to apply this knowledge to develop efficient parallel applications using the Message Passing Interface (MPI). HPC concepts will be illustrated using applications such as numerical linear algebra. The course is designed for students with no experience writing scientific applications in Fortran or C. A written and oral semester project from each student is required. There are two hours of lecture and two hours of laboratory each week.
Math 525, ComS 525 or CprE 525: High Performance Computing.
This graduate course assumes students have had experience in writing scientific applications in Fortran or C. Topics that will be covered in this course include: HPC concepts and terminology, HPC machine architecture, debugging and performance tools, advanced parallel programming with MPI, OpenMP and possibly OpenACC and/or CUDA. A semester project related to an area of research is required. There are two hours of lecture and two hours of laboratory each week.
CprE 594: Selected Topics in Computer Engineering Applications of Parallel Computing.
The XSEDE (high Performance Computing) project and the University of California, Berkeley are offering an online course on parallel computing for graduate students and advanced undergraduates. ISU is going to be partner in this course and will offer this course for credit to ISU students. The course is targeted towards graduate students from diverse backgrounds, including computer science, all types of engineering, physical sciences, biology, economics and other disciplines.
ME 570X: Solid Modeling and GPU Computing.
This course covers the introduction to parallel computing using the graphic processing unit (GPU) and the theory of solid modeling. Topics include solid modeling fundamentals, different representations of solid geometry, introduction to parallel programming using CUDA, and applications of GPU algorithms.