|
timemory 3.3.0
Modular C++ Toolkit for Performance Analysis and Logging. Profiling API and Tools for C, C++, CUDA, Fortran, and Python. The C++ template API is essentially a framework to creating tools: it is designed to provide a unifying interface for recording various performance measurements alongside data logging and interfaces to other tools.
|
Classes | |
| struct | user_components |
Typedefs | |
| template<int I> | |
| using | make_int_sequence = std::make_integer_sequence< int, I > |
| template<int... Ints> | |
| using | int_sequence = std::integer_sequence< int, Ints... > |
| using | component_match_set_t = std::set< std::string > |
| using | component_match_vector_t = std::vector< bool(*)(const char *)> |
| using | component_match_index_t = std::vector< TIMEMORY_COMPONENT > |
| using | opaque_pair_t = std::pair< component::opaque, std::set< size_t > > |
Functions | |
| template<typename Tools , typename Func , typename... Args, typename Ret = std::result_of_t<Func(Args...)>, std::enable_if_t<!std::is_same< Ret, void >::value, int > = 0> | |
| Ret | invoke (string_view_t &&label, Func &&func, Args &&... args) |
| template<int I, int V, typename... Args> | |
| enable_if_t< component::enumerator< I >::value &&I !=V, void > | do_enumerator_generate (std::vector< opaque_pair_t > &opaque_array, int idx, Args &&... args) |
| template<int I, int V, typename... Args> | |
| enable_if_t<!component::enumerator< I >::value||I==V, void > | do_enumerator_generate (std::vector< opaque_pair_t > &, int, Args &&...) |
| template<int I, typename Tp , typename... Args> | |
| enable_if_t< component::enumerator< I >::value, void > | do_enumerator_init (Tp &obj, int idx, Args &&... args) |
| template<int I, typename Tp , typename... Args> | |
| enable_if_t<!component::enumerator< I >::value, void > | do_enumerator_init (Tp &, int, Args &&...) |
| template<int I> | |
| void | do_enumerator_enumerate (component_match_vector_t &_vec, component_match_index_t &_idx, component_match_set_t &_set) |
| template<typename Tp , int... Ints, typename... Args> | |
| void | enumerator_init (Tp &obj, int idx, int_sequence< Ints... >, Args &&... args) |
| template<typename Tp , int... Ints, typename... Args> | |
| void | enumerator_insert (Tp &obj, int idx, int_sequence< Ints... >, Args &&... args) |
| template<typename Tp , int... Ints, typename... Args> | |
| void | enumerator_configure (int idx, int_sequence< Ints... >, Args &&... args) |
| template<typename Tp , int... Ints, typename... Args> | |
| void | enumerator_configure (Tp &obj, int idx, int_sequence< Ints... >, Args &&... args) |
| template<int... Ints> | |
| void | enumerator_enumerate (component_match_vector_t &_vec, component_match_index_t &_idx, component_match_set_t &_set, int_sequence< Ints... >) |
| template<typename Tp , typename Arg , typename... Args> | |
| void | initialize (Tp &obj, int idx, Arg &&arg, Args &&... args) |
| template<typename Tp , typename Arg , typename... Args> | |
| void | insert (Tp &obj, int idx, Arg &&arg, Args &&... args) |
| template<typename Tp , typename Arg , typename... Args> | |
| void | configure (int idx, Arg &&arg, Args &&... args) |
| template<typename Tp , typename Arg , typename... Args> | |
| void | configure (Tp &obj, int idx, Arg &&arg, Args &&... args) |
| int | enumerate (const std::string &key) |
| int | enumerate (const char *key) |
| template<typename Tp > | |
| void | initialize (Tp &obj, int idx) |
| template<typename Tp > | |
| void | insert (Tp &obj, int idx) |
| template<typename Tp > | |
| void | configure (int idx) |
| template<typename Tp > | |
| void | configure (Tp &obj, int idx) |
| template<typename Tp > | |
| void | insert (Tp &obj, int idx, scope::config _scope) |
| template<typename Tp > | |
| void | configure (int idx, scope::config _scope) |
| template<typename Tp > | |
| void | configure (Tp &obj, int idx, scope::config _scope) |
| template<typename Tp , typename Arg , typename... Args> | |
| void | initialize (Tp &obj, int idx, Arg &&, Args &&...) |
| template<typename Tp , typename Arg , typename... Args> | |
| void | insert (Tp &obj, int idx, Arg &&, Args &&...) |
| struct tim::runtime::user_components |
Definition at line 36 of file callbacks.hpp.
Collaboration diagram for tim::runtime::user_components:| Class Members | ||
|---|---|---|
| typedef map< int, set< string > > | enum_key_map_t | |
| using tim::runtime::component_match_index_t = typedef std::vector<TIMEMORY_COMPONENT> |
Definition at line 58 of file properties.hpp.
| using tim::runtime::component_match_set_t = typedef std::set<std::string> |
Definition at line 56 of file properties.hpp.
| using tim::runtime::component_match_vector_t = typedef std::vector<bool (*)(const char*)> |
Definition at line 57 of file properties.hpp.
| using tim::runtime::int_sequence = typedef std::integer_sequence<int, Ints...> |
Definition at line 55 of file properties.hpp.
| using tim::runtime::make_int_sequence = typedef std::make_integer_sequence<int, I> |
Definition at line 53 of file properties.hpp.
| using tim::runtime::opaque_pair_t = typedef std::pair<component::opaque, std::set<size_t> > |
Definition at line 59 of file properties.hpp.
| void tim::runtime::configure | ( | int | idx | ) |
Definition at line 332 of file properties.hpp.
| void tim::runtime::configure | ( | int | idx, |
| Arg && | arg, | ||
| Args &&... | args | ||
| ) |
Definition at line 239 of file properties.hpp.
| void tim::runtime::configure | ( | int | idx, |
| scope::config | _scope | ||
| ) |
Definition at line 359 of file properties.hpp.
| void tim::runtime::configure | ( | Tp & | obj, |
| int | idx | ||
| ) |
Definition at line 341 of file properties.hpp.
References enumerator_configure().
| void tim::runtime::configure | ( | Tp & | obj, |
| int | idx, | ||
| Arg && | arg, | ||
| Args &&... | args | ||
| ) |
| void tim::runtime::configure | ( | Tp & | obj, |
| int | idx, | ||
| scope::config | _scope | ||
| ) |
Definition at line 368 of file properties.hpp.
References enumerator_configure().
Referenced by enumerator_configure().
|
inline |
Definition at line 124 of file properties.hpp.
References tim::component::properties< Tp >::id(), and IF_CONSTEXPR.
| enable_if_t<!component::enumerator< I >::value||I==V, void > tim::runtime::do_enumerator_generate | ( | std::vector< opaque_pair_t > & | , |
| int | , | ||
| Args && | ... | ||
| ) |
Definition at line 91 of file properties.hpp.
| enable_if_t< component::enumerator< I >::value &&I !=V, void > tim::runtime::do_enumerator_generate | ( | std::vector< opaque_pair_t > & | opaque_array, |
| int | idx, | ||
| Args &&... | args | ||
| ) |
| enable_if_t<!component::enumerator< I >::value, void > tim::runtime::do_enumerator_init | ( | Tp & | , |
| int | , | ||
| Args && | ... | ||
| ) |
Definition at line 117 of file properties.hpp.
| enable_if_t< component::enumerator< I >::value, void > tim::runtime::do_enumerator_init | ( | Tp & | obj, |
| int | idx, | ||
| Args &&... | args | ||
| ) |
Definition at line 102 of file properties.hpp.
References IF_CONSTEXPR.
|
inline |
|
inline |
Definition at line 258 of file properties.hpp.
References enumerator_enumerate(), TIMEMORY_COMPONENTS_END, and tim::settings::tolower().
Referenced by enumerate(), and tim::enumerate_components().
| void tim::runtime::enumerator_configure | ( | int | idx, |
| int_sequence< Ints... > | , | ||
| Args &&... | args | ||
| ) |
Definition at line 177 of file properties.hpp.
References configure(), and TIMEMORY_FOLD_EXPRESSION.
Referenced by configure().
| void tim::runtime::enumerator_configure | ( | Tp & | obj, |
| int | idx, | ||
| int_sequence< Ints... > | , | ||
| Args &&... | args | ||
| ) |
| void tim::runtime::enumerator_enumerate | ( | component_match_vector_t & | _vec, |
| component_match_index_t & | _idx, | ||
| component_match_set_t & | _set, | ||
| int_sequence< Ints... > | |||
| ) |
Definition at line 205 of file properties.hpp.
References TIMEMORY_FOLD_EXPRESSION.
Referenced by enumerate().
| void tim::runtime::enumerator_init | ( | Tp & | obj, |
| int | idx, | ||
| int_sequence< Ints... > | , | ||
| Args &&... | args | ||
| ) |
Definition at line 153 of file properties.hpp.
References TIMEMORY_FOLD_EXPRESSION.
Referenced by initialize().
| void tim::runtime::enumerator_insert | ( | Tp & | obj, |
| int | idx, | ||
| int_sequence< Ints... > | , | ||
| Args &&... | args | ||
| ) |
Definition at line 163 of file properties.hpp.
References TIMEMORY_FOLD_EXPRESSION.
Referenced by insert().
| void tim::runtime::initialize | ( | Tp & | obj, |
| int | idx | ||
| ) |
Definition at line 314 of file properties.hpp.
References enumerator_init().
| void tim::runtime::initialize | ( | Tp & | obj, |
| int | idx, | ||
| Arg && | , | ||
| Args && | ... | ||
| ) |
| void tim::runtime::initialize | ( | Tp & | obj, |
| int | idx, | ||
| Arg && | arg, | ||
| Args &&... | args | ||
| ) |
Definition at line 219 of file properties.hpp.
References enumerator_init().
Referenced by tim::initialize().
| void tim::runtime::insert | ( | Tp & | obj, |
| int | idx | ||
| ) |
Definition at line 323 of file properties.hpp.
References enumerator_insert().
| void tim::runtime::insert | ( | Tp & | obj, |
| int | idx, | ||
| Arg && | , | ||
| Args && | ... | ||
| ) |
| void tim::runtime::insert | ( | Tp & | obj, |
| int | idx, | ||
| Arg && | arg, | ||
| Args &&... | args | ||
| ) |
Definition at line 229 of file properties.hpp.
References enumerator_insert().
Referenced by tim::insert().
| void tim::runtime::insert | ( | Tp & | obj, |
| int | idx, | ||
| scope::config | _scope | ||
| ) |
Definition at line 350 of file properties.hpp.
References enumerator_insert().
| Ret tim::runtime::invoke | ( | string_view_t && | label, |
| Func && | func, | ||
| Args &&... | args | ||
| ) |
Definition at line 39 of file invoker.hpp.