36#define YAC_PAK_VERSION_MAJOR 0
37#define YAC_PAK_VERSION_MINOR 1
38#define YAC_PAK_VERSION_PATCH 2
39#define YAC_PAK_VERSION_STRING "0.1.2"
277 char const * component,
281 char const * datetime,
351 char const * field,
char const * component,
353 double tstart,
double tend);
388 struct yac_pak * pak,
char const * comp_name,
int yac_pak_region_trace_is_enabled(struct yac_pak const *pak, yac_pak_trace_level_t level)
Check whether region events at a given trace level will be recorded.
int yac_pak_trace_start_setup(struct yac_pak *pak, char const *name, yac_pak_event_type_t type)
Setup-phase event tracing.
int yac_pak_register(struct yac_pak *pak, char const *name)
Register a named timer.
int yac_pak_trace_is_enabled(struct yac_pak const *pak)
Event tracing support.
int yac_pak_setup_trace_is_enabled(struct yac_pak const *pak)
Check whether setup-phase tracing is active.
int yac_pak_start(struct yac_pak *pak, int idx)
Start a registered timer.
void yac_pak_delete(struct yac_pak *pak)
Destroy a YAC PAK object.
struct yac_pak * yac_pak_new(MPI_Comm comm, int capacity)
Construct a new YAC PAK object.
yac_pak_event_type_t
Event type for YAC PAK trace entries. Defines the type of events that can be recorded in YAC PAK trac...
yac_pak_trace_level_t
YAC PAK coupling trace level.
int yac_pak_trace_record(struct yac_pak *pak, char const *field, char const *component, char const *grid, yac_pak_event_type_t type, double tstart, double tend)
Record a complete trace entry with explicit timestamps.
int yac_pak_report(struct yac_pak *pak, FILE *out)
Generate collective timer report.
char const * yac_pak_get_config_output_path(struct yac_pak const *pak)
Return the coupling configuration output file path if enabled.
int yac_pak_trace_stop(struct yac_pak *pak, int handle)
Stop a trace event.
int yac_pak_flush_trace(struct yac_pak *pak)
Flush trace data to disk.
void yac_pak_set_component(struct yac_pak *pak, char const *comp_name, int comp_rank, int comp_size)
Set the component this process belongs to.
int yac_pak_stop(struct yac_pak *pak, int idx)
Stop a registered timer.
int yac_pak_trace_start_ex(struct yac_pak *pak, char const *field, char const *component, char const *grid, yac_pak_event_type_t type, int put_idx, char const *datetime, int action, yac_pak_trace_level_t level)
Start a trace event with full metadata.
@ YAC_PAK_EVENT_TYPE_WAIT
@ YAC_PAK_EVENT_TYPE_FINALIZE
@ YAC_PAK_EVENT_TYPE_INIT
@ YAC_PAK_EVENT_TYPE_SYNC_DEF
@ YAC_PAK_EVENT_TYPE_AGET
@ YAC_PAK_EVENT_TYPE_DEF_COMP
@ YAC_PAK_EVENT_TYPE_UPDATE
@ YAC_PAK_EVENT_TYPE_ENDDEF
@ YAC_PAK_EVENT_TYPE_REGION
@ YAC_PAK_TRACE_LEVEL_MAX
highest level
@ YAC_PAK_TRACE_LEVEL_OFF
no coupling events
@ YAC_PAK_TRACE_LEVEL_REGIONS
@ YAC_PAK_TRACE_LEVEL_COUPLING
PUT/GET/AGET/UPDATE/WAIT events.