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.
|
#include "timemory/components/papi/papi_array.hpp"
Public Types | |
using | size_type = size_t |
using | event_list = std::vector< int > |
using | value_type = std::array< long long, MaxNumEvents > |
using | entry_type = typename value_type::value_type |
using | this_type = papi_array< MaxNumEvents > |
using | base_type = base< this_type, value_type > |
using | storage_type = typename base_type::storage_type |
using | tracker_type = policy::instance_tracker< this_type > |
using | get_initializer_t = std::function< event_list()> |
using | common_type = void |
template<typename Tp > | |
using | array_t = std::array< Tp, MaxNumEvents > |
Public Member Functions | |
papi_array () | |
~papi_array ()=default | |
papi_array (const papi_array &)=default | |
papi_array (papi_array &&) noexcept=default | |
papi_array & | operator= (const papi_array &)=default |
papi_array & | operator= (papi_array &&) noexcept=default |
size_t | size () |
template<typename Tp = double> | |
std::vector< Tp > | get () const |
void | sample () |
void | start () |
void | stop () |
this_type & | operator+= (const this_type &rhs) |
this_type & | operator-= (const this_type &rhs) |
this_type & | operator/= (size_t _val) |
entry_type | get_display (int evt_type) const |
template<typename Archive > | |
void | load (Archive &ar, const unsigned int) |
template<typename Archive > | |
void | save (Archive &ar, const unsigned int) const |
std::vector< std::string > | label_array () const |
std::vector< std::string > | description_array () const |
std::vector< std::string > | display_unit_array () const |
std::vector< int64_t > | unit_array () const |
string_t | get_display () const |
Static Public Member Functions | |
static auto & | get_initializer () |
static void | configure () |
static void | initialize () |
static void | thread_finalize () |
static void | finalize () |
static value_type | record () |
static std::string | label () |
static std::string | description () |
template<typename... Args> | |
static opaque | get_opaque (Args &&...) |
Static Public Attributes | |
static const short | precision = 3 |
static const short | width = 8 |
Protected Attributes | |
event_list | events |
Friends | |
struct | operation::record< this_type > |
struct | operation::start< this_type > |
struct | operation::stop< this_type > |
struct | operation::set_started< this_type > |
struct | operation::set_stopped< this_type > |
class | impl::storage< this_type, trait::uses_value_storage< this_type, value_type >::value > |
std::ostream & | operator<< (std::ostream &os, const this_type &obj) |
Definition at line 47 of file papi_array.hpp.
using tim::component::papi_array< MaxNumEvents >::array_t = std::array<Tp, MaxNumEvents> |
Definition at line 67 of file papi_array.hpp.
using tim::component::papi_array< MaxNumEvents >::base_type = base<this_type, value_type> |
Definition at line 57 of file papi_array.hpp.
using tim::component::papi_array< MaxNumEvents >::common_type = void |
Definition at line 61 of file papi_array.hpp.
using tim::component::papi_array< MaxNumEvents >::entry_type = typename value_type::value_type |
Definition at line 55 of file papi_array.hpp.
using tim::component::papi_array< MaxNumEvents >::event_list = std::vector<int> |
Definition at line 53 of file papi_array.hpp.
using tim::component::papi_array< MaxNumEvents >::get_initializer_t = std::function<event_list()> |
Definition at line 60 of file papi_array.hpp.
using tim::component::papi_array< MaxNumEvents >::size_type = size_t |
Definition at line 52 of file papi_array.hpp.
using tim::component::papi_array< MaxNumEvents >::storage_type = typename base_type::storage_type |
Definition at line 58 of file papi_array.hpp.
using tim::component::papi_array< MaxNumEvents >::this_type = papi_array<MaxNumEvents> |
Definition at line 56 of file papi_array.hpp.
using tim::component::papi_array< MaxNumEvents >::tracker_type = policy::instance_tracker<this_type> |
Definition at line 59 of file papi_array.hpp.
using tim::component::papi_array< MaxNumEvents >::value_type = std::array<long long, MaxNumEvents> |
Definition at line 54 of file papi_array.hpp.
|
inline |
Definition at line 93 of file papi_array.hpp.
References tim::component::papi_array< MaxNumEvents >::events.
|
default |
|
default |
|
defaultnoexcept |
|
inlinestatic |
Definition at line 78 of file papi_array.hpp.
Referenced by tim::component::papi_array< MaxNumEvents >::initialize(), tim::component::papi_array< MaxNumEvents >::sample(), and tim::component::papi_array< MaxNumEvents >::start().
|
inlinestatic |
Definition at line 229 of file papi_array.hpp.
|
inline |
Definition at line 299 of file papi_array.hpp.
References tim::component::papi_array< MaxNumEvents >::events.
|
inline |
Definition at line 310 of file papi_array.hpp.
References tim::component::papi_array< MaxNumEvents >::events.
|
inlinestatic |
Definition at line 89 of file papi_array.hpp.
|
inline |
Definition at line 120 of file papi_array.hpp.
References tim::component::papi_array< MaxNumEvents >::events, and tim::component::base< papi_array< MaxNumEvents >, std::array< long long, MaxNumEvents > >::load().
|
inline |
Definition at line 331 of file papi_array.hpp.
References tim::component::papi_array< MaxNumEvents >::events, tim::component::base< Tp, Value >::get_format_flags(), tim::component::base< Tp, Value >::get_precision(), tim::component::base< Tp, Value >::get_width(), tim::component::base< papi_array< MaxNumEvents >, std::array< long long, MaxNumEvents > >::load(), and tim::os.
Referenced by tim::component::papi_array< MaxNumEvents >::save().
|
inline |
Definition at line 231 of file papi_array.hpp.
|
inlinestatic |
Definition at line 77 of file papi_array.hpp.
|
inlinestaticinherited |
Definition at line 72 of file declaration.hpp.
|
inlinestatic |
Definition at line 83 of file papi_array.hpp.
References tim::component::papi_array< MaxNumEvents >::configure().
|
inlinestatic |
Definition at line 222 of file papi_array.hpp.
|
inline |
Definition at line 263 of file papi_array.hpp.
References tim::component::papi_array< MaxNumEvents >::events.
|
inline |
Definition at line 240 of file papi_array.hpp.
References tim::component::papi_array< MaxNumEvents >::events, and tim::component::base< papi_array< MaxNumEvents >, std::array< long long, MaxNumEvents > >::laps.
|
inline |
Definition at line 170 of file papi_array.hpp.
References tim::component::papi_array< MaxNumEvents >::events.
|
inline |
Definition at line 181 of file papi_array.hpp.
References tim::component::papi_array< MaxNumEvents >::events.
|
inline |
|
default |
|
defaultnoexcept |
|
inlinestatic |
Definition at line 108 of file papi_array.hpp.
Referenced by tim::component::papi_array< MaxNumEvents >::sample(), tim::component::papi_array< MaxNumEvents >::start(), and tim::component::papi_array< MaxNumEvents >::stop().
|
inline |
Definition at line 134 of file papi_array.hpp.
References tim::component::papi_array< MaxNumEvents >::configure(), tim::component::papi_array< MaxNumEvents >::events, tim::component::papi_array< MaxNumEvents >::record(), and tim::invoke::start().
|
inline |
|
inline |
Definition at line 104 of file papi_array.hpp.
References tim::component::papi_array< MaxNumEvents >::events.
|
inline |
Definition at line 148 of file papi_array.hpp.
References tim::component::papi_array< MaxNumEvents >::configure(), tim::component::papi_array< MaxNumEvents >::events, tim::component::papi_array< MaxNumEvents >::record(), and tim::invoke::start().
|
inline |
Definition at line 160 of file papi_array.hpp.
References tim::component::papi_array< MaxNumEvents >::record(), and tim::invoke::stop().
|
inlinestatic |
Definition at line 84 of file papi_array.hpp.
References tim::component::papi_common::finalize_papi().
|
inline |
Definition at line 321 of file papi_array.hpp.
References tim::component::papi_array< MaxNumEvents >::events.
|
friend |
Definition at line 192 of file papi_array.hpp.
|
friend |
Definition at line 64 of file papi_array.hpp.
|
friend |
Definition at line 64 of file papi_array.hpp.
|
friend |
Definition at line 64 of file papi_array.hpp.
|
friend |
Definition at line 64 of file papi_array.hpp.
|
friend |
Definition at line 64 of file papi_array.hpp.
|
friend |
Definition at line 370 of file papi_array.hpp.
|
protected |
Definition at line 352 of file papi_common.hpp.
Referenced by tim::component::papi_array< MaxNumEvents >::papi_array(), tim::component::papi_array< MaxNumEvents >::description_array(), tim::component::papi_array< MaxNumEvents >::display_unit_array(), tim::component::papi_array< MaxNumEvents >::get(), tim::component::papi_array< MaxNumEvents >::get_display(), tim::component::papi_array< MaxNumEvents >::label_array(), tim::component::papi_array< MaxNumEvents >::load(), tim::component::papi_array< MaxNumEvents >::operator+=(), tim::component::papi_array< MaxNumEvents >::operator-=(), tim::component::papi_array< MaxNumEvents >::sample(), tim::component::papi_array< MaxNumEvents >::save(), tim::component::papi_array< MaxNumEvents >::size(), tim::component::papi_array< MaxNumEvents >::start(), and tim::component::papi_array< MaxNumEvents >::unit_array().
|
static |
Definition at line 63 of file papi_array.hpp.
|
static |
Definition at line 64 of file papi_array.hpp.