Code that can observe and/or modify the execution of an application.
A tool that executes in the address space of the program that it is monitoring.
A tool that executes as a separate process from the process that it is monitoring and potentially controlling.
A first-party tool that successfully completed its initialization.
A point of interest in the execution of a thread.
A thread defined by an underlying thread implementation.
A function that a tool provides to an OpenMP implementation to invoke when an associated event occurs.
Providing a tool callback to an OpenMP implementation.
Processing a callback when an associated event occurs in a manner consistent with the return code provided when a first-party tool registered the callback.
An enumeration type that describes the current OpenMP activity of a thread. A thread can be in only one state at any time.
A unique opaque handle associated with each data object (for example, a lock) that the OpenMP runtime uses to enforce mutual exclusion and potentially to cause a thread to wait actively or passively.
A storage area on a thread’s stack associated with a procedure invocation. A frame includes space for one or more saved registers and often also includes space for saved arguments, local variables, and padding for alignment.
An address associated with a procedure frame on a call stack that was the value of the stack pointer immediately prior to calling the procedure for which the frame represents the invocation.
A function interface provided by an OpenMP runtime for use by a tool. A runtime entry point is typically not associated with a global function symbol.
A data structure in which to store information associated with an occurrence of an event.
A trace record for an OpenMP device that is in a device-specific format.
A software interrupt delivered to a thread.
A function called asynchronously when a signal is delivered to a thread.
The guarantee that interruption by signal delivery will not interfere with a set of operations. An async signal safe runtime entry point is safe to call from a signal handler.
A contiguous region of memory that contains code of an OpenMP program to be executed on a device.
An interface that helps a first-party tool monitor the execution of an OpenMP program.
A state that indicates the permitted interactions between a first-party tool and the OpenMP implementation.
An OMPT interface state in which the OpenMP implementation is prepared to accept runtime calls from a first-party tool and will dispatch any registered callbacks and in which a first-party tool can invoke runtime entry points if not otherwise restricted.
An OMPT interface state in which the OpenMP implementation can only call functions to initialize a first-party tool and in which a first-party tool cannot invoke runtime entry points.
An OMPT interface state in which the OpenMP implementation will not make any callbacks and in which a first-party tool cannot invoke runtime entry points.
An interface that helps a third-party tool inspect the OpenMP state of a program that has begun execution.
A dynamically loadable library that implements the OMPD interface.
An executable or shared library.
A collection of logical, virtual, or physical memory address ranges that contain code, stack, and/or data. Address ranges within an address space need not be contiguous. An address space consists of one or more segments.
A portion of an address space associated with a set of address ranges.
The architecture on which an OpenMP region executes.
The architecture on which an OMPD tool executes.
A collection of one or more threads and address spaces. A process may contain threads and address spaces for multiple OpenMP architectures. At least one thread in an OpenMP process is an OpenMP thread. A process may be live or a core file.
A handle that refers to an address space within an OpenMP process.
A handle that refers to an OpenMP thread.
A handle that refers to an OpenMP parallel region.
A handle that refers to an OpenMP task region.
An output handle that is returned from the OMPD library in a function that accepts an input handle: the output handle is a descendent of the input handle.
An input handle that is passed to the OMPD library in a function that returns an output handle: the input handle is an ancestor of the output handle. For a given handle, the ancestors of the handle are also the ancestors of the handle’s descendent.
COMMENT: A tool cannot use a handle in an OMPD call if any ancestor of the handle has been released, except for OMPD calls that release it.
An opaque reference provided by a tool to an OMPD library. A tool context uniquely identifies an abstraction.
A tool context that refers to an address space within a process.
A tool context that refers to a native thread.
An identifier for a native thread defined by a thread implementation.