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/ert/configuration.hpp"
Public Types | |
using | device_type = DeviceT |
using | value_type = Tp |
using | configuration_type = configuration< device_type, value_type, CounterT > |
using | counter_type = counter< device_type, value_type, CounterT > |
using | this_type = executor< device_type, value_type, CounterT > |
using | callback_type = std::function< void(counter_type &)> |
using | ert_data_t = exec_data< CounterT > |
Public Member Functions | |
executor (configuration_type &config, std::shared_ptr< ert_data_t > _data) | |
template<typename FuncT > | |
executor (configuration_type &config, std::shared_ptr< ert_data_t > _data, FuncT &&_counter_callback) | |
template<typename FuncT = std::function<void(uint64_t, counter_type&)>> | |
auto | operator() (configuration_type &config, std::shared_ptr< ert_data_t > _data={}, FuncT &&_counter_callback=FuncT{}) |
Static Public Member Functions | |
static callback_type & | get_callback () |
static void | execute (counter_type &_counter) |
template<size_t... Flops, enable_if_t<(sizeof...(Flops) > 0)> = 0> | |
static bool | execute (counter_type &_counter, std::array< std::string, sizeof...(Flops)> _labels) |
Public Attributes | |
callback_type | callback = get_callback() |
Definition at line 281 of file configuration.hpp.
using tim::ert::executor< DeviceT, Tp, CounterT >::callback_type = std::function<void(counter_type&)> |
Definition at line 294 of file configuration.hpp.
using tim::ert::executor< DeviceT, Tp, CounterT >::configuration_type = configuration<device_type, value_type, CounterT> |
Definition at line 291 of file configuration.hpp.
using tim::ert::executor< DeviceT, Tp, CounterT >::counter_type = counter<device_type, value_type, CounterT> |
Definition at line 292 of file configuration.hpp.
using tim::ert::executor< DeviceT, Tp, CounterT >::device_type = DeviceT |
Definition at line 289 of file configuration.hpp.
using tim::ert::executor< DeviceT, Tp, CounterT >::ert_data_t = exec_data<CounterT> |
Definition at line 295 of file configuration.hpp.
using tim::ert::executor< DeviceT, Tp, CounterT >::this_type = executor<device_type, value_type, CounterT> |
Definition at line 293 of file configuration.hpp.
using tim::ert::executor< DeviceT, Tp, CounterT >::value_type = Tp |
Definition at line 290 of file configuration.hpp.
|
inline |
Definition at line 303 of file configuration.hpp.
|
inline |
Definition at line 312 of file configuration.hpp.
|
inlinestatic |
Definition at line 361 of file configuration.hpp.
References tim::ert::counter< DeviceT, Tp, Counter >::bytes_per_element, tim::ert::counter< DeviceT, Tp, Counter >::label, tim::ert::counter< DeviceT, Tp, Counter >::memory_accesses_per_element, tim::ert::ops_main(), and TIMEMORY_VEC.
Referenced by tim::ert::executor< DeviceT, Tp, CounterT >::get_callback(), and tim::ert::executor< device::gpu, Tp, CounterT >::get_callback().
|
inlinestatic |
|
inlinestatic |
Definition at line 351 of file configuration.hpp.
References tim::ert::executor< DeviceT, Tp, CounterT >::execute().
Referenced by tim::component::cpu_roofline< Types >::set_executor_callback(), and tim::component::gpu_roofline< Types >::set_executor_callback().
|
inline |
Definition at line 322 of file configuration.hpp.
callback_type tim::ert::executor< DeviceT, Tp, CounterT >::callback = get_callback() |
Definition at line 346 of file configuration.hpp.