Optimizing Code on Cray PVP SystemsAbstractThis guide provides information about techniques you can use to optimize Fortran, C, or C++ code on Cray Research parallel vector processing (PVP) systems. This is a task-oriented guide for programmers with working knowledge of either the UNICOS or UNIX operating system and experience in working with CF90, Cray C++, or Cray Standard C compilers. This guide contains material copyrighted by Cray Research, Inc. and is reproduced here as permitted by contract with Cray Research, Inc. About This CourseThis guide describes an optimization process for a single CPUs in Cray PVP systems. After you optimize the code for single-CPU performance, you might find that the code will benefit from multiple-CPU execution. The following information is provided in this course:
IntroductionOptimization is the process of changing a program or the environment in which it runs to improve its performance. Performance gains generally fall into one of two categories of measured time:
During the optimization process you will need to execute your code repeatedly to assess performance and measure performance gain. To save execution time, we encourage you to work with smaller, sample data sets that exercise all of the code within your program. The code should run at least 30 seconds to give performance tools adequate time to measure performance. Each area of optimization involves a three-step method, which includes the following general steps:
Check your answers after each code modification to avoid regression, then compare the new performance against the initial performance to decide where to proceed. If you want to continue optimizing for single-CPU performance, return to the initial analysis. Next | Section 1: Evaluating code to determine where to focus optimization efforts. |