27#if defined(__cplusplus)
45#if defined(TIMEMORY_USE_MPI) && defined(TIMEMORY_USE_GOTCHA)
46# define TIMEMORY_MPI_GOTCHA
51#if !defined(TIMEMORY_VISIBLE)
52# define TIMEMORY_VISIBLE TIMEMORY_VISIBILITY("default")
77#if defined(__cplusplus)
98 int* ct) TIMEMORY_VISIBLE;
154 int up) TIMEMORY_VISIBLE;
222 ...) TIMEMORY_VISIBLE;
235 const
char*) TIMEMORY_VISIBLE;
244 ...) TIMEMORY_VISIBLE;
249 const
char* ctypes) TIMEMORY_VISIBLE;
287 timemory_settings) TIMEMORY_VISIBLE;
297 const
char*) TIMEMORY_VISIBLE;
302 const
int*) TIMEMORY_VISIBLE;
306 const
char*) TIMEMORY_VISIBLE;
313 const
char** names) TIMEMORY_VISIBLE;
322#if defined(TIMEMORY_MPI_GOTCHA)
329 extern void timemory_trace_set_mpi(
bool use,
bool attached) TIMEMORY_VISIBLE;
418#if defined(__cplusplus)
void timemory_create_record(const char *name, uint64_t *id, int n, int *ct)
void timemory_pause(void)
Turn off timemory collection.
void(* timemory_delete_func_t)(uint64_t)
function pointer type for timemory_delete_function
void timemory_set_environ(const char *evar, const char *eval, int ovr, int up)
timemory_create_func_t timemory_create_function
The function pointer to set to customize which components are used by library interface.
void timemory_trace_init(const char *, bool, const char *)
timemory_delete_func_t timemory_delete_function
The function pointer to set which deletes an entry created by timemory_create_function.
void timemory_push_trace_hash(uint64_t id)
void * c_timemory_create_auto_tuple(const char *,...)
void timemory_push_trace(const char *name)
uint64_t timemory_get_unique_id(void)
Returns a unique integer for a thread.
void timemory_push_components_enum(int args,...)
Replace the current set of components with a new set of components with the set of enumerations provi...
void timemory_remove_components(const char *components)
Remove some components to the current set of components being collected. Any components which are not...
void timemory_push_region(const char *name)
void timemory_end_record(uint64_t id)
uint64_t timemory_get_begin_record_types(const char *name, const char *ctypes)
Variant to timemory_begin_record_types which returns a unique integer.
void cxx_timemory_init(int, char **, timemory_settings)
bool timemory_is_throttled(const char *name)
uint64_t timemory_get_begin_record_enum(const char *name,...)
Variant to timemory_begin_record_enum which returns a unique integer.
void timemory_pop_components(void)
Inverse of the last timemory_push_components or timemory_push_components_enum call....
void(* timemory_create_func_t)(const char *, uint64_t *, int, int *)
void timemory_pop_trace(const char *name)
void timemory_pop_region(const char *name)
bool timemory_library_is_initialized(void)
Returns whether the library is initialized or not.
void timemory_resume(void)
Turn on timemory collection.
void * cxx_timemory_delete_auto_tuple(void *)
void timemory_begin_record_enum(const char *name, uint64_t *,...)
Similar to timemory_begin_record but accepts a specific enumerated set of components,...
void timemory_init_library(int argc, char **argv)
Initializes timemory. Not strictly necessary but highly recommended.
int c_timemory_enabled(void)
void c_timemory_finalize(void)
void timemory_pop_trace_hash(uint64_t id)
void timemory_add_components(const char *components)
Add some components to the current set of components being collected Any components which are current...
const char * c_timemory_blank_label(const char *)
void * cxx_timemory_delete_auto_timer(void *)
void timemory_set_default(const char *components)
Pass in a default set of components to use. Will be overridden by TIMEMORY_COMPONENTS environment var...
void timemory_delete_record(uint64_t nid)
Deletes the record created by timemory_create_record.
bool timemory_trace_is_initialized(void)
const char * c_timemory_label(const char *, const char *, int, const char *)
void timemory_push_components(const char *components)
Replace the current set of components with a new set of components.
void timemory_trace_finalize(void)
void timemory_named_init_library(char *name)
void c_timemory_init(int argc, char **argv, timemory_settings)
int cxx_timemory_enabled(void)
uint64_t timemory_get_begin_record(const char *name)
Variant to timemory_begin_record which returns a unique integer.
void timemory_begin_record_types(const char *name, uint64_t *, const char *)
Similar to timemory_begin_record but accepts a specific set of components as a string.
void * cxx_timemory_create_auto_timer(const char *)
void c_timemory_delete_auto_tuple(void *)
void timemory_begin_record(const char *name, uint64_t *id)
void timemory_finalize_library(void)
Finalizes timemory. Output will be generated. Any attempt to store data within timemory storage is un...
void timemory_add_hash_ids(uint64_t nentries, uint64_t *ids, const char **names)
const char * c_timemory_basic_label(const char *, const char *)
void c_timemory_delete_auto_timer(void *)
const char * cxx_timemory_label(int, int, const char *, const char *, const char *)
void * c_timemory_create_auto_timer(const char *)
void timemory_trace_set_env(const char *, const char *)
void timemory_add_hash_id(uint64_t id, const char *name)
void timemory_reset_throttle(const char *name)
void * cxx_timemory_create_auto_tuple(const char *, int, const int *)