Autonomic Performance Environment for eXascale (APEX)
2.3.1
|
Go to the documentation of this file.
32 #include "apex_export.h"
62 APEX_EXPORT
int apex_init(
const char * thread_name,
const uint64_t comm_rank,
63 const uint64_t comm_size);
148 void * identifier, uint64_t guid);
223 void * identifier, uint64_t guid);
511 apex_event_type event_type,
int num_inputs,
long ** inputs,
long * mins,
512 long * maxs,
long * steps);
563 APEX_EXPORT
void apex_send (uint64_t tag, uint64_t size, uint64_t target);
579 APEX_EXPORT
void apex_recv (uint64_t tag, uint64_t size,
580 uint64_t source_rank, uint64_t source_thread);
592 #ifndef DOXYGEN_SHOULD_SKIP_THIS
594 #define apex_macro(name, member_variable, type, default_value) \
595 void apex_set_##member_variable (type inval); \
596 type apex_get_##member_variable (void);
597 FOREACH_APEX_OPTION(apex_macro)
600 #define apex_macro(name, member_variable, type, default_value) \
601 void apex_set_##member_variable (type inval); \
602 type apex_get_##member_variable (void);
603 FOREACH_APEX_STRING_OPTION(apex_macro)
int(* apex_policy_function)(apex_context const context)
Definition: apex_types.h:207
int apex_setup_throughput_tuning(apex_profiler_type type, void *identifier, apex_optimization_criteria_t criteria, apex_event_type event_type, int num_inputs, long **inputs, long *mins, long *maxs, long *steps)
Setup throttling to optimize for the specified function, using multiple input criteria.
void apex_reset(apex_profiler_type type, void *identifier)
Reset a timer or counter.
int apex_setup_timer_throttling(apex_profiler_type type, void *identifier, apex_optimization_criteria_t criteria, apex_optimization_method_t method, unsigned long update_interval)
Setup throttling to optimize for the specified function.
const char * apex_version(void)
Return the APEX version.
void reset(const std::string &timer_name)
Reset a timer or counter.
void apex_cleanup()
Cleanup APEX.
Typedef for enumerating the different event types.
void apex_recv(uint64_t tag, uint64_t size, uint64_t source_rank, uint64_t source_thread)
Notify APEX that the current thread is receiving a parcel/message from another rank/locality/process.
void apex_set_state(apex_thread_state state)
Set the thread state.
apex_event_type apex_register_custom_event(const char *name)
Register an event type with APEX.
int apex_shutdown_throttling(void)
Terminate the throttling policy.
void apex_new_task(apex_profiler_type type, void *identifier, uint64_t task_id)
Create a new task (dependency).
void apex_custom_event(apex_event_type event_type, void *custom_data)
Trigger a custom event.
uint64_t apex_hardware_concurrency(void)
Get the number of possible threads supported on this system.
void apex_yield(apex_profiler_handle profiler)
Stop a timer, but don't increment the number of calls.
Typedef for enumerating the different timer types.
int apex_init(const char *thread_name, const uint64_t comm_rank, const uint64_t comm_size)
Intialize APEX.
apex_profiler_handle apex_start_guid(apex_profiler_type type, void *identifier, uint64_t guid)
Start a timer.
apex_policy_handle * apex_register_periodic_policy(unsigned long period, apex_policy_function f)
Register a policy with APEX.
void apex_sample_value(const char *name, double value)
Sample a state value.
void apex_exit_thread(void)
Exit a thread.
void apex_send(uint64_t tag, uint64_t size, uint64_t target)
Notify APEX that the current thread is sending a parcel/message to another rank/locality/process.
apex_profiler_handle apex_resume(apex_profiler_type type, void *identifier)
Resume a timer.
apex_optimization_method_t
Definition: apex_types.h:122
apex_policy_handle * apex_register_policy(const apex_event_type when, apex_policy_function f)
Register a policy with APEX.
void apex_deregister_policy(apex_policy_handle *handle)
Deregister a policy with APEX.
double apex_current_power_high(void)
Get the current power reading.
apex_profile * apex_get_profile(apex_profiler_type type, void *identifier)
Get the current profile for the specified id.
void apex_print_options(void)
Print the current APEX settings.
void * apex_profiler_handle
Definition: apex_types.h:25
const char * apex_dump(bool reset)
Dump output from APEX.
void apex_finalize()
Finalize APEX.
void apex_stop(apex_profiler_handle profiler)
Stop a timer.
apex_optimization_criteria_t
Definition: apex_types.h:110
apex_profiler_handle apex_resume_guid(apex_profiler_type type, void *identifier, uint64_t guid)
Resume a timer.
int apex_setup_power_cap_throttling(void)
Initialize the power cap throttling policy.
void apex_set_thread_cap(int new_cap)
Set the current thread cap for throttling.
void apex_register_thread(const char *name)
Register a new thread.
apex_profiler_handle apex_start(apex_profiler_type type, void *identifier)
Start a timer.
int apex_get_thread_cap(void)
Get the current thread cap set by the throttling.