![]()
In partial fulfillment of the Requirements for the Degree of
Master of Science
Van Bui
will defend her thesis
PerfOMP: A RUNTIME PERFORMANCE/EVENT
MONITORING INTERFACE FOR OPENMP
Abstract
Parallel programming languages/libraries including OpenMP, MPI, and UPC are
either in the process of defining or have already established standard performance
profiling interfaces. The OpenMP Architecture Review Board (ARB) recently sanctioned
an interface specification for profiling/tracing tools that defines a protocol
for two-way communications and control between the OpenMP runtime library and
performance tools. To evaluate this approach to performance measurement, the PerfOMP
interface has been designed to operate as an intermediary software layer to
support unidirectional communications from the OpenMP runtime library to performance
tools. PerfOMP can support the implementation of the OpenMP ARB
sanctioned profiling interface by providing the underlying infrastructure for tracking
OpenMP events/states inside the OpenMP runtime and satisfying specific queries
made by the performance tool to the OpenMP runtime. Alternatively, PerfOMP can
be implemented to directly profile or trace the performance of an OpenMP application
through the OpenMP runtime library. PerfOMP has been integrated into an
existing open source compilation and performance tool environment and successfully
tested with benchmark kernels and a production quality parallel computational fluid
dynamics application. Design, implementation details and case study results are
presented that highlight the benefits and potential insights that this approach can
offer to compiler and tool developers, performance analysts, and end-user application
scientists.