The goal of this training is to provide knowledge on major topics to achieve program performance:
- How to optimize a program to obtain the best performance, and
- Parallel programming - how to port a program to a parallel computer to reduce the execution time by dividing the work among several threads/processes.
Topics Covered
- Parallel Computer Architectures
- Compilers and Monitoring Tools
- Program Analysis and Optimization
- Performance Tuning
- Shared Memory Parallel Programming using OpenMP
- Parallel Programming in Distributed Memory using MPI
Objectives
Upon completion of this course, the student should be able to:
- Understand basic parallel computer architectures
- Use system tools to identify performance problems.
- Evaluate program performance
- Better use compiler/mathematical libraries capabilities.
- Understand basic optimization techniques
- Recognize the advantages and pitfalls of parallel processing.
- Write multithreaded programs using OpenMP
- Write multiprocessor programs using Message Passing Interface - MPI
Target Audience
This course is intended to programmers who work currently with C and Fortran, want to be able to recognize performance problems in their application, and to improve the execution time by program optimization and parallel execution.
Prerequisites
Students should have C or Fortran programming experience, and know how to perform basic Linux/Unix commands (cp, ls, make etc)
This Course is Offered on Demand
This course is available upon request to a minimum of six students. When the minimum is reached, then we will schedule a class. If you are interested in scheduling a class, please call 1-800-361-2621.
|
|