| OPENMP API Specification: Version 5.0 November 2018

4  OMPT Interface

This chapter describes OMPT, which is an interface for first-party tools. First-party tools are linked or loaded directly into the OpenMP program. OMPT defines mechanisms to initialize a tool, to examine OpenMP state associated with an OpenMP thread, to interpret the call stack of an OpenMP thread, to receive notification about OpenMP events, to trace activity on OpenMP target devices, to assess implementation-dependent details of an OpenMP implementation (such as supported states and mutual exclusion implementations), and to control a tool from an OpenMP application.

 4.1  OMPT Interfaces Definitions
 4.2  Activating a First-Party Tool
  4.2.1  ompt_start_tool
  4.2.2  Determining Whether a First-Party Tool Should be Initialized
  4.2.3  Initializing a First-Party Tool
  4.2.4  Monitoring Activity on the Host with OMPT
  4.2.5  Tracing Activity on Target Devices with OMPT
 4.3  Finalizing a First-Party Tool
 4.4  OMPT Data Types
  4.4.1  Tool Initialization and Finalization
  4.4.2  Callbacks
  4.4.3  Tracing
  4.4.4  Miscellaneous Type Definitions
 4.5  OMPT Tool Callback Signatures and Trace Records
  4.5.1  Initialization and Finalization Callback Signature
  4.5.2  Event Callback Signatures and Trace Records
 4.6  OMPT Runtime Entry Points for Tools
  4.6.1  Entry Points in the OMPT Callback Interface
  4.6.2  Entry Points in the OMPT Device Tracing Interface
  4.6.3  Lookup Entry Points: ompt_function_lookup_t