HOME
| OPENMP API Specification: Version 5.0 November 2018

5.4  OMPD Tool Callback Interface

For the OMPD library to provide information about the internal state of the OpenMP runtime system in an OpenMP process or core file, it must have a means to extract information from the OpenMP process that the tool is debugging. The OpenMP process on which the tool is operating may be either a “live” process or a core file, and a thread may be either a “live” thread in an OpenMP process, or a thread in a core file. To enable the OMPD library to extract state information from an OpenMP process or core file, the tool must supply the OMPD library with callback functions to inquire about the size of primitive types in the device of the OpenMP process, to look up the addresses of symbols, and to read and to write memory in the device. The OMPD library uses these callbacks to implement its interface operations. The OMPD library only invokes the callback functions in direct response to calls made by the tool to the OMPD library.

  5.4.1  Memory Management of OMPD Library
   5.4.1.1  ompd_callback_memory_alloc_fn_t
   5.4.1.2  ompd_callback_memory_free_fn_t
  5.4.2  Context Management and Navigation
   5.4.2.1  ompd_callback_get_thread_context_for_thread_id_fn_t
   5.4.2.2  ompd_callback_sizeof_fn_t
  5.4.3  Accessing Memory in the OpenMP Program or Runtime
   5.4.3.1  ompd_callback_symbol_addr_fn_t
   5.4.3.2  ompd_callback_memory_read_fn_t
   5.4.3.3  ompd_callback_memory_write_fn_t
  5.4.4  Data Format Conversion: ompd_callback_device_host_fn_t
  5.4.5  Output: ompd_callback_print_string_fn_t
  5.4.6  The Callback Interface