Markers for categorizing performance measurements. More...
Classes | |
| struct | context< T > |
| base for annotation contexts. More... | |
| class | guard< ctx, severity > |
| Scope guard for marking a code region. More... | |
| struct | region< CTX > |
| base for code region annotations. More... | |
| class | rguard< reg > |
| Scope guard for marking a code region. More... | |
Enumerations | |
| enum class | detail |
| used for specifying what detail of annotations to collect. More... | |
Functions | |
| template<class reg> | |
| std::enable_if_t< std::is_base_of< context< typename reg::outer_context >, typename reg::outer_context >::value > | begin () |
| Tag beginning of code region with caliper annotation. | |
| template<class ctx, detail severity> | |
| std::enable_if_t< std::is_base_of< context< ctx >, ctx >::value > | begin (const char *region_name) |
| Tag beginning of a code region with runtime name. | |
| template<class reg> | |
| std::enable_if_t< std::is_base_of< context< typename reg::outer_context >, typename reg::outer_context >::value &&std::is_base_of< execute_task< reg >, reg >::value > | begin (std::string_view task_name) |
| Tag beginning of an execute_task region. | |
| template<class reg> | |
| std::enable_if_t< std::is_base_of< context< typename reg::outer_context >, typename reg::outer_context >::value > | end () |
| Tag end of code region using a region type. | |
| template<class ctx, detail severity> | |
| std::enable_if_t< std::is_base_of< context< ctx >, ctx >::value > | end () |
| Tag end of a named code region. | |
Markers for categorizing performance measurements.
This utility provides an interface to the Caliper source-code annotation API. Regions of code are marked and annotations are recorded in Caliper depending on the CALIPER_DETAIL CMake option. Caliper's runtime configuration can then be used to control performance measurement and collection for the annotations.
Contents are in flecsi::util::annotation unless otherwise specified.
|
strong |
used for specifying what detail of annotations to collect.
| std::enable_if_t< std::is_base_of< context< ctx >, ctx >::value > begin | ( | const char * | region_name | ) |
Tag beginning of a code region with runtime name.
This is used to mark code regions with a name at runtime in contrast to using a region type.
| ctx | annotation context for named code region. |
| detail | severity detail level to use for code region. |
| std::enable_if_t< std::is_base_of< context< typename reg::outer_context >, typename reg::outer_context >::value > begin | ( | ) |
Tag beginning of code region with caliper annotation.
The region is only tagged if caliper is enabled and reg::detail_level is compatible with the current annotation detail level.
| reg | code region to tag (type inherits from annotation::region). |
| std::enable_if_t< std::is_base_of< context< typename reg::outer_context >, typename reg::outer_context >::value &&std::is_base_of< execute_task< reg >, reg >::value > begin | ( | std::string_view | task_name | ) |
Tag beginning of an execute_task region.
The execute_task region has multiple phases and is associated with a named task.
| reg | code region to tag (must inherit from annotation::execute_task). |
| task_name | name of task to tag. |
| std::enable_if_t< std::is_base_of< context< ctx >, ctx >::value > end | ( | ) |
Tag end of a named code region.
This is used for runtime named code regions (in contrast using region types).
| ctx | annotation context for named code region. |
| detail | severity detail level to use for code region. |
| std::enable_if_t< std::is_base_of< context< typename reg::outer_context >, typename reg::outer_context >::value > end | ( | ) |
Tag end of code region using a region type.
The region is only tagged if caliper is enabled and reg::detail_level is compatible with the current annotation detail level.
| reg | code region to tag (type inherits from annotation::region). |