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.
tim::plotting::operation Namespace Reference

Functions

template<typename Arg , typename... Args>
auto join (const char *sep, Arg &&arg, Args &&... args)
 
template<typename Tp >
void plot (string_t _prefix, const string_t &_dir, bool _echo_dart, string_t _json_file)
 

Function Documentation

◆ join()

template<typename Arg , typename... Args>
auto tim::plotting::operation::join ( const char *  sep,
Arg &&  arg,
Args &&...  args 
)

Definition at line 74 of file declaration.hpp.

75{
76 std::stringstream ss;
77 ss << std::forward<Arg>(arg);
79 ::std::initializer_list<int>{ (ss << sep << std::forward<Args>(args), 0)... });
80 return ss.str();
81}
void consume_parameters(ArgsT &&...)
Definition: types.hpp:285

References tim::consume_parameters().

Referenced by tim::source_location::source_location(), tim::source_location::compute_data(), tim::plotting::echo_dart_file(), tim::operation::echo_measurement< Tp, true >::generate_name(), and tim::mpl::apply< Ret >::join().

◆ plot()

template<typename Tp >
void tim::plotting::operation::plot ( string_t  _prefix,
const string_t _dir,
bool  _echo_dart,
string_t  _json_file 
)

Definition at line 87 of file declaration.hpp.

88{
89 if(std::is_same<typename Tp::value_type, void>::value)
90 {
92 PRINT_HERE("%s", "");
93 return;
94 }
95
97 {
99 PRINT_HERE("%s", "");
100 return;
101 }
102
103 if(_prefix.empty())
104 _prefix = Tp::get_description();
105
106 if(_json_file.empty())
107 _json_file = settings::compose_output_filename(Tp::get_label(), ".json");
108
109 auto _label = demangle<Tp>();
110
112}
const string_t const string_t bool const string_t & _json_file
Definition: definition.hpp:54
const string_t const string_t & _dir
Definition: definition.hpp:52
const string_t const string_t bool _echo_dart
Definition: definition.hpp:53
std::enable_if_t<(sizeof...(Types) > 0), void > plot(const string_t &_prefix, const string_t &_dir, bool _echo_dart, const string_t &_json_file)
char const std::string & _prefix
Definition: config.cpp:55
json_output
Definition: settings.cpp:1625
trait that designates a type should always print a JSON output
#define PRINT_HERE(...)
Definition: macros.hpp:152

References tim::plotting::_dir, tim::plotting::_echo_dart, tim::plotting::_json_file, tim::plotting::_prefix, tim::settings::compose_output_filename(), tim::debug, tim::json_output, plot(), PRINT_HERE, and tim::verbose.

Referenced by plot().