Previous: Backend Installation, Up: Installing PPW


2.3 Obtaining Analysis Baseline Measurements

PPW's analysis module can make use of baseline measurements of the execution times for various operations in UPC, SHMEM, and MPI programs. These baseline values - measurements of the execution time of an operation under optimal circumstances - are helpful in determining whether or not a given operation occurring in an application is taking more time than it should. For this baseline filtering to be most effective, you should obtain baseline measurements for a given system when the system load is minimal.

Note that obtaining baseline values is an optional, though recommended, step in the setup of PPW. The baseline values are only used by the advanced analyses provided by the tool. Also, if baseline values are not present when you run analyses, the analysis process will use deviation comparison in place of baseline comparison to filter events.

The PPW backend supplies UPC, SHMEM, and MPI programs used to collect the baseline execution times for various operations in these programming models. These programs are instrumented and run with PPW to obtain resulting performance data files that supply the baseline values. These programs are located in subdirectories of the analysis directory within the PPW backend installation.

2.3.1 Building the Baseline Programs

We have provided basic makefiles for compiling the baseline programs for each programming model. You may need to modify these to specify the location of your PPW installation (if the compiler wrappers are not in your path) or add any necessary compiler options. Running make for a given programming model should then generate two baseline programs, called ppw_base_all and ppw_base_a2a.

2.3.2 Running the Baseline Programs

The ppw_base_all program needs to be run only with a system size of 2, while the ppw_base_a2a program should be run with system sizes ranging from 2 to 32. We have provided basic run.sh scripts (for each programming model) to run the baseline programs using the appropriate system sizes. You may need to modify the scripts to specify the appropriate run command(s) for your system. Also, in some cases the scripts may not be useful for invoking the baseline programs on your system, and you'll need to manually run the baseline programs in the appropriate manner.

2.3.3 Using the Baseline PAR Files

Once the instrumented baseline programs have been run, you should obtain output PAR files with specific names: ppw_base_all.par for the ppw_base_all program, and ppw_base_a2a_N.par files for runs of the ppw_base_a2a program on system size N. These files should now be transferred to the appropriate location within your frontend PPW installation, normally the analysis/baseline/PMODEL directory, where PMODEL is UPC, SHMEM, or MPI. If you use the PPW frontend on a separate workstation from your parallel system, you will need to use a file transfer program to copy the baseline PAR files to the appropriate directory within your PPW installation on your workstation.

Now when you first run analyses from within the PPW GUI, the baseline PAR files will be used to generate files containing baseline values for operations in a given programming model. These resulting files, called ppw_baseline.txt and located within each of the subdirectories of the analysis/baseline directory of the PPW frontend installation, should be deleted if you need to regenerate baseline data from new baseline PAR files (for example, if you are using a different system than before).