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/operations/types.hpp"
Public Types | |
using | base_type = base::print |
using | this_type = print< Tp, has_data > |
using | type = Tp |
using | storage_type = impl::storage< Tp, has_data > |
using | result_type = typename storage_type::dmp_result_t |
using | result_node = typename storage_type::result_node |
using | graph_type = typename storage_type::graph_t |
using | graph_node = typename storage_type::graph_node |
using | hierarchy_type = std::vector< uint64_t > |
using | callback_type = std::function< void(this_type *)> |
using | stream_type = std::shared_ptr< utility::stream > |
using | basic_tree_type = basic_tree< node::tree< Tp > > |
using | basic_tree_vector_type = std::vector< basic_tree_type > |
using | result_tree = std::map< std::string, std::vector< basic_tree_vector_type > > |
using | settings_t = std::shared_ptr< settings > |
Public Member Functions | |
print (storage_type *_data, const settings_t &_settings=settings::shared_instance()) | |
print (const std::string &_label, storage_type *_data, const settings_t &_settings=settings::shared_instance()) | |
~print () override=default | |
void | execute () override |
void | update_data () override |
void | setup () override |
void | read_json () override |
void | print_dart () override |
void | print_custom () override |
virtual void | print_tree (const std::string &fname, result_tree &rt) |
void | write_stream (stream_type &stream, result_type &results) |
void | print_json (const std::string &fname, result_type &results) |
const auto & | get_data () const |
const auto & | get_node_results () const |
const auto & | get_node_input () const |
const auto & | get_node_delta () const |
std::vector< result_node * > | get_flattened (result_type &results) |
virtual void | write (std::ostream &os, stream_type stream) |
virtual void | print_cout (stream_type stream) |
virtual void | print_text (const std::string &fname, stream_type stream) |
virtual void | print_plot (const std::string &fname, std::string suffix) |
auto | get_label () const |
auto | get_text_output_name () const |
auto | get_tree_output_name () const |
auto | get_json_output_name () const |
auto | get_json_input_name () const |
auto | get_text_diff_name () const |
auto | get_json_diff_name () const |
void | set_debug (bool v) |
void | set_update (bool v) |
void | set_verbose (int32_t v) |
void | set_max_call_stack (int64_t v) |
int64_t | get_max_depth () const |
bool | dart_output () |
bool | file_output () |
bool | cout_output () |
bool | tree_output () |
bool | json_output () |
bool | text_output () |
bool | plot_output () |
bool | flame_output () |
Static Public Member Functions | |
static callback_type & | get_default_callback () |
Static Public Attributes | |
static constexpr bool | has_data = true |
Protected Attributes | |
storage_type * | data = nullptr |
callback_type | callback = get_default_callback() |
result_type | node_results = {} |
result_type | node_input = {} |
result_type | node_delta = {} |
result_tree | node_tree = {} |
settings_t | m_settings = settings::shared_instance() |
bool | debug = false |
bool | update = true |
bool | json_forced = false |
bool | node_init = dmp::is_initialized() |
int32_t | node_rank = dmp::rank() |
int32_t | node_size = dmp::size() |
int32_t | verbose = 0 |
int64_t | max_depth = 0 |
int64_t | max_call_stack = std::numeric_limits<int64_t>::max() |
std::string | label = "" |
std::string | description = "" |
std::string | text_outfname = "" |
std::string | tree_outfname = "" |
std::string | json_outfname = "" |
std::string | json_inpfname = "" |
std::string | text_diffname = "" |
std::string | json_diffname = "" |
stream_type | data_stream = stream_type{} |
stream_type | diff_stream = stream_type{} |
using tim::operation::finalize::print< Tp, true >::base_type = base::print |
using tim::operation::finalize::print< Tp, true >::basic_tree_type = basic_tree<node::tree<Tp> > |
using tim::operation::finalize::print< Tp, true >::basic_tree_vector_type = std::vector<basic_tree_type> |
using tim::operation::finalize::print< Tp, true >::callback_type = std::function<void(this_type*)> |
using tim::operation::finalize::print< Tp, true >::graph_node = typename storage_type::graph_node |
using tim::operation::finalize::print< Tp, true >::graph_type = typename storage_type::graph_t |
using tim::operation::finalize::print< Tp, true >::hierarchy_type = std::vector<uint64_t> |
using tim::operation::finalize::print< Tp, true >::result_node = typename storage_type::result_node |
using tim::operation::finalize::print< Tp, true >::result_tree = std::map<std::string, std::vector<basic_tree_vector_type> > |
using tim::operation::finalize::print< Tp, true >::result_type = typename storage_type::dmp_result_t |
|
inherited |
using tim::operation::finalize::print< Tp, true >::storage_type = impl::storage<Tp, has_data> |
using tim::operation::finalize::print< Tp, true >::stream_type = std::shared_ptr<utility::stream> |
using tim::operation::finalize::print< Tp, true >::type = Tp |
|
explicit |
Definition at line 118 of file print.hpp.
References tim::description(), tim::max_depth, and tim::tree_output.
|
inline |
|
overridevirtualdefault |
Reimplemented from tim::operation::finalize::base::print.
|
inlineinherited |
Definition at line 1255 of file types.hpp.
References tim::operation::finalize::base::print::m_settings, and PRINT_HERE.
|
inlineinherited |
Definition at line 1237 of file types.hpp.
References tim::operation::finalize::base::print::m_settings, and PRINT_HERE.
|
inlineoverridevirtual |
Implements tim::operation::finalize::base::print.
Definition at line 1379 of file types.hpp.
References tim::cout_output, tim::dart_output, tim::diff_output, tim::file_output, tim::json_output, tim::plot_output, tim::text_output, and tim::tree_output.
|
inlineinherited |
Definition at line 1246 of file types.hpp.
References tim::operation::finalize::base::print::m_settings, and PRINT_HERE.
|
inlineinherited |
Definition at line 1303 of file types.hpp.
References tim::operation::finalize::base::print::m_settings, and PRINT_HERE.
|
inline |
|
inlinestatic |
Definition at line 1362 of file types.hpp.
|
inline |
|
inlineinherited |
Definition at line 1223 of file types.hpp.
References tim::operation::finalize::base::print::json_diffname.
|
inlineinherited |
Definition at line 1221 of file types.hpp.
References tim::operation::finalize::base::print::json_inpfname.
|
inlineinherited |
Definition at line 1220 of file types.hpp.
References tim::operation::finalize::base::print::json_outfname.
|
inlineinherited |
|
inlineinherited |
Definition at line 1230 of file types.hpp.
References tim::operation::finalize::base::print::m_settings, tim::operation::finalize::base::print::max_call_stack, and tim::operation::finalize::base::print::max_depth.
|
inline |
|
inline |
|
inline |
|
inlineinherited |
Definition at line 1222 of file types.hpp.
References tim::operation::finalize::base::print::text_diffname.
|
inlineinherited |
Definition at line 1218 of file types.hpp.
References tim::operation::finalize::base::print::text_outfname.
|
inlineinherited |
Definition at line 1219 of file types.hpp.
References tim::operation::finalize::base::print::tree_outfname.
|
inlineinherited |
Definition at line 1274 of file types.hpp.
References tim::operation::finalize::base::print::json_forced, tim::operation::finalize::base::print::m_settings, and PRINT_HERE.
|
inlineinherited |
Definition at line 1293 of file types.hpp.
References tim::operation::finalize::base::print::m_settings, and PRINT_HERE.
|
virtualinherited |
|
inlineoverridevirtual |
Implements tim::operation::finalize::base::print.
Definition at line 1454 of file types.hpp.
|
overridevirtual |
Implements tim::operation::finalize::base::print.
Definition at line 512 of file print.hpp.
References tim::max_depth.
void tim::operation::finalize::print< Tp, true >::print_json | ( | const std::string & | fname, |
result_type & | results | ||
) |
Definition at line 435 of file print.hpp.
References tim::get(), tim::manager::instance(), and tim::filepath::open().
|
virtualinherited |
|
virtualinherited |
|
virtual |
Definition at line 474 of file print.hpp.
References tim::get(), tim::manager::instance(), and tim::filepath::open().
|
overridevirtual |
Implements tim::operation::finalize::base::print.
Definition at line 555 of file print.hpp.
References tim::get(), PRINT_HERE, and TIMEMORY_CONDITIONAL_DEMANGLED_BACKTRACE.
|
inlineinherited |
|
inlineinherited |
Definition at line 1228 of file types.hpp.
References tim::operation::finalize::base::print::max_call_stack.
|
inlineinherited |
Definition at line 1226 of file types.hpp.
References tim::operation::finalize::base::print::update.
|
inlineinherited |
Definition at line 1227 of file types.hpp.
References tim::operation::finalize::base::print::verbose.
|
overridevirtual |
Implements tim::operation::finalize::base::print.
Definition at line 166 of file print.hpp.
References tim::settings::compose_input_filename(), tim::settings::compose_output_filename(), tim::cout_output, tim::delimit(), tim::description(), tim::file_output, tim::max_depth, and tim::text_output.
|
inlineinherited |
Definition at line 1284 of file types.hpp.
References tim::operation::finalize::base::print::m_settings, and PRINT_HERE.
|
inlineinherited |
Definition at line 1264 of file types.hpp.
References tim::operation::finalize::base::print::json_forced, tim::operation::finalize::base::print::m_settings, and PRINT_HERE.
|
overridevirtual |
Implements tim::operation::finalize::base::print.
Definition at line 352 of file print.hpp.
References tim::description(), and tim::tree_output.
|
virtualinherited |
void tim::operation::finalize::print< Tp, true >::write_stream | ( | stream_type & | stream, |
result_type & | results | ||
) |
Definition at line 258 of file print.hpp.
References tim::data::stream::add_row(), tim::max_depth, tim::math::percent_diff(), tim::math::plus(), and tim::type_mutex().
|
protected |
|
protected |
|
protectedinherited |
|
protectedinherited |
Definition at line 1316 of file types.hpp.
Referenced by tim::operation::finalize::base::print::print(), and tim::operation::finalize::base::print::set_debug().
|
protectedinherited |
|
protectedinherited |
|
staticconstexpr |
|
protectedinherited |
Definition at line 1332 of file types.hpp.
Referenced by tim::operation::finalize::base::print::get_json_diff_name().
|
protectedinherited |
Definition at line 1318 of file types.hpp.
Referenced by tim::operation::finalize::base::print::json_output(), and tim::operation::finalize::base::print::tree_output().
|
protectedinherited |
Definition at line 1330 of file types.hpp.
Referenced by tim::operation::finalize::base::print::get_json_input_name().
|
protectedinherited |
Definition at line 1329 of file types.hpp.
Referenced by tim::operation::finalize::base::print::get_json_output_name().
|
protectedinherited |
Definition at line 1325 of file types.hpp.
Referenced by tim::operation::finalize::base::print::get_label(), and tim::operation::finalize::TIMEMORY_OPERATIONS_LINKAGE().
|
protectedinherited |
Definition at line 1315 of file types.hpp.
Referenced by tim::operation::finalize::base::print::print(), tim::operation::finalize::base::print::cout_output(), tim::operation::finalize::base::print::dart_output(), tim::operation::finalize::base::print::file_output(), tim::operation::finalize::base::print::flame_output(), tim::operation::finalize::base::print::get_max_depth(), tim::operation::finalize::base::print::json_output(), tim::operation::finalize::base::print::plot_output(), tim::operation::finalize::base::print::text_output(), tim::operation::finalize::TIMEMORY_OPERATIONS_LINKAGE(), and tim::operation::finalize::base::print::tree_output().
|
protectedinherited |
Definition at line 1324 of file types.hpp.
Referenced by tim::operation::finalize::base::print::print(), tim::operation::finalize::base::print::get_max_depth(), and tim::operation::finalize::base::print::set_max_call_stack().
|
protectedinherited |
Definition at line 1323 of file types.hpp.
Referenced by tim::operation::finalize::base::print::get_max_depth().
|
protected |
|
protectedinherited |
|
protected |
|
protectedinherited |
Definition at line 1320 of file types.hpp.
Referenced by tim::operation::finalize::TIMEMORY_OPERATIONS_LINKAGE().
|
protected |
|
protectedinherited |
|
protected |
|
protectedinherited |
Definition at line 1331 of file types.hpp.
Referenced by tim::operation::finalize::base::print::get_text_diff_name().
|
protectedinherited |
Definition at line 1327 of file types.hpp.
Referenced by tim::operation::finalize::base::print::get_text_output_name().
|
protectedinherited |
Definition at line 1328 of file types.hpp.
Referenced by tim::operation::finalize::base::print::get_tree_output_name().
|
protectedinherited |
Definition at line 1317 of file types.hpp.
Referenced by tim::operation::finalize::base::print::set_update().
|
protectedinherited |
Definition at line 1322 of file types.hpp.
Referenced by tim::operation::finalize::base::print::print(), and tim::operation::finalize::base::print::set_verbose().