Introduction to High Performance Computing

Course
Identifier: 
COM S 4240

Offered during the Fall semester.

  1. Credits and contact hours: 3 credits, 4 contact hours
  2. Instructor’s or course coordinator’s name:
  3. Text book, title, author, and yearUSING OPENM – The Next Step, R. van der Pas, E. Stotzer, and C. Terboven
  4. Other supplemental materialsFORTRAN 95/2003 for Scientists and Engineers, S. Chapman

Specific course information

  1. Brief description of the content of the course: Unix, serial programming of scientific applications, OpenMP for shared-memory parallelization. No Unix, Fortran or C experience required.
  2. Prerequisites or co-requisites: Math 265, Math 207, or Math 317, or permission of instructor.
  3. Required, elective, or selected elective? Selected Elective

Specific goals for the course

  1. Specific outcomes of instruction:
  • Students will learn to assess parallel algorithms from a practical perspective. (2)
  • Students will understand fundamentals of parallel computing including architectures, algorithms, and programming systems.
  • Student will learn parallel algorithmic techniques and develop the ability to design new parallel algorithms.
  • Student will write parallel programs using MPI and appreciate parallel aspects in developing parallel software systems. (6)
  • Students will work in teams, submit a report, and give a presentation. (3,5)

Brief list of topics to be covered

  • Intro to high performance computing
  • Unix and the vi editor
  • Basic Fortran programming
  • Shared memory parallelization using OpenMP
  • Serial and parallel program optimization techniques
  • Semester projects, must optimize an application for both the serial and parallelize and optimize serial execution of some application