ryujin 2.1.1 revision 0348cbb53a3e4b1da2a4c037e81f88f2d21ce219
introspection.h File Reference
#include "openmp.h"
Include dependency graph for introspection.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

Various macros and include for instrumentation via valgrind,

likwid, and clang lsan.

#define CALLGRIND_START_INSTRUMENTATION
 
#define CALLGRIND_STOP_INSTRUMENTATION
 
#define LIKWID_INIT
 
#define LIKWID_CLOSE
 
#define LIKWID_MARKER_START(opt)
 
#define LIKWID_MARKER_STOP(opt)
 
#define LSAN_DISABLE
 
#define LSAN_ENABLE
 

Macro Definition Documentation

◆ CALLGRIND_START_INSTRUMENTATION

#define CALLGRIND_START_INSTRUMENTATION
Value:
do { \
} while (false)

A set of macros that start and stop callgrind instrumentation (if the executable is run with valgrind). We currently wrap the hot paths in the Euler and Navier-Stokes modules in the HyperbolicModule::step() and DissipationModule::step() functions. Usage:

// critical compute kernel section
#define CALLGRIND_START_INSTRUMENTATION
Definition: introspection.h:28
#define CALLGRIND_STOP_INSTRUMENTATION
Definition: introspection.h:35

Definition at line 28 of file introspection.h.

◆ CALLGRIND_STOP_INSTRUMENTATION

#define CALLGRIND_STOP_INSTRUMENTATION
Value:
do { \
} while (false)

A set of macros that start and stop callgrind instrumentation (if the executable is run with valgrind). We currently wrap the hot paths in the Euler and Navier-Stokes modules in the HyperbolicModule::step() and DissipationModule::step() functions. Usage:

Definition at line 35 of file introspection.h.

◆ LIKWID_INIT

#define LIKWID_INIT

Wrapper macro initializing likwid introspection. Used in main().

Definition at line 49 of file introspection.h.

◆ LIKWID_CLOSE

#define LIKWID_CLOSE

Wrapper macro finalizing likwid introspection. Used in main().

Definition at line 54 of file introspection.h.

◆ LIKWID_MARKER_START

#define LIKWID_MARKER_START (   opt)

A set of macros that start and stop likwid instrumentation (if support for likwid is enabled). We currently wrap the hot paths in the Euler and Navier-Stokes modules in the HyperbolicModule::step() and DissipationModule::step() functions. Usage:

LIKWID_MARKER_START("string identifier")
// critical compute kernel section
LIKWID_MARKER_STOP("string identifier")
#define LIKWID_MARKER_START(opt)
Definition: introspection.h:68
#define LIKWID_MARKER_STOP(opt)
Definition: introspection.h:73

Definition at line 68 of file introspection.h.

◆ LIKWID_MARKER_STOP

#define LIKWID_MARKER_STOP (   opt)

A set of macros that start and stop likwid instrumentation (if support for likwid is enabled). We currently wrap the hot paths in the Euler and Navier-Stokes modules in the HyperbolicModule::step() and DissipationModule::step() functions. Usage:

LIKWID_MARKER_START("string identifier")
// critical compute kernel section
LIKWID_MARKER_STOP("string identifier")

Definition at line 73 of file introspection.h.

◆ LSAN_DISABLE

#define LSAN_DISABLE

Explicitly disable/enable the LLVM/Clang LeakSanitiver

// Calling some external code path that is leaky and that we cannot
// control...
#define LSAN_ENABLE
#define LSAN_DISABLE

Definition at line 102 of file introspection.h.

◆ LSAN_ENABLE

#define LSAN_ENABLE

Explicitly disable/enable the LLVM/Clang LeakSanitiver

// Calling some external code path that is leaky and that we cannot
// control...

Definition at line 107 of file introspection.h.