perftools-base
CrayPat fundamental module
- Author:
Hewlett Packard Enterprise Development LP.
- Copyright:
Copyright 2019-2021,2023-2024 Hewlett Packard Enterprise Development LP.
- Manual section:
4
DESCRIPTION
The perftools-base module provides access to man pages, utilities such as Reveal, Cray Apprentice2 and grid_order, and instrumentation modules. It does not add compiler flags to enable performance data collection (such as symbol table information). It is a low-impact module that does not alter program behavior and can be left loaded even when building and running programs without CrayPat instrumentation.
Once the perftools-base module is loaded, the instrumentation modules are available for use. Use the module avail perftools command to view the list of instrumentation modules currently supported.
The following instrumentation modules are currently supported.
perftools
Full access to CrayPat functionality. Load this instrumentation module then use pat_build to instrument a program for performance data collection or pat_report to process the collected data and generate reports.
perftools-lite
Perftools-lite program profiling. Load this instrumentation module and then build and run the program to get a basic performance profile sent to stdout.
perftools-lite-events
Perftools-lite event profile. Load this instrumentation module and then build and run the program to get more in-depth performance data, which results in an event profile being sent to stdout.
perftools-lite-gpu
Perftools-lite GPU kernel and data movement information. Load this instrumentation module and then build and run the program to get more in-depth GPU-specific performance data sent to stdout.
perftools-lite-hbm
(X86-64 systems only)
Perftools-lite memory bandwidth data.
perftools-lite-loops
Perftools-lite loop estimates for Reveal. Load this instrumentation module and then build and run the program to get loop work estimates sent to stdout. After program execution completes, a performance data file (.ap2) is produced for use with Reveal. After the experiment is complete, unload the perftools-lite-loops module to prevent further program instrumentation.
perftools-preload
Use the environment variable LD_PRELOAD to instrument and collect performance data at runtime using the pat_run utility. See the pat_run(1) man page for more information.
The perftools-base module can remain loaded for access to Reveal and Apprentice2. Use the module list command to easily see which type of instrumentation is currently active.
EXAMPLES
Procedure For Using Perftools-lite
Step 1. Load the perftools-base module.
$ module load perftools-base
Step 2. Choose the default Perftools-lite experiment.
$ module load perftools-lite
Step 3. Compile and link the program with no modifications.
$ ftn -o my_program my_program.f
Step 4. Run the program with no modifications to job launch script, and view profile sent to stdout.
$ srun -n pes ./my_program
Step 5. Disable Perftools-lite experiment if you are done collecting data.
$ module unload perftools-lite
SEE ALSO
intro_craypat(1), reveal(1), app2(1)
perftools-lite(4), perftools-preload(4)
accpc(5), cray_pm(5), cray_rapl(5), hwpc(5), cray_cassini(5), uncore(5), papi_counters(5)