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.
percent_diff.hpp File Reference
#include "timemory/math/fwd.hpp"
#include "timemory/mpl/concepts.hpp"
#include "timemory/mpl/types.hpp"
#include "timemory/utility/types.hpp"
#include <cassert>
#include <cmath>
#include <limits>
#include <utility>
+ Include dependency graph for percent_diff.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  tim
 
namespace  tim::math
 

Functions

template<typename Tp , enable_if_t< std::is_arithmetic< Tp >::value > = 0>
Tp tim::math::percent_diff (Tp _lhs, Tp _rhs, type_list<>,...)
 
template<typename Tp , enable_if_t<!std::is_arithmetic< Tp >::value &&std::is_class< Tp >::value > = 0>
auto tim::math::percent_diff (Tp _lhs, Tp _rhs, type_list<>,...) -> decltype(_lhs.percent_diff(_rhs))
 
template<typename Tp , typename Vp = typename Tp::value_type>
auto tim::math::percent_diff (const Tp &_lhs, const Tp &_rhs, type_list<>, long) -> decltype(std::begin(_lhs), Tp{})
 
template<typename Tp , typename Kp = typename Tp::key_type, typename Mp = typename Tp::mapped_type>
auto tim::math::percent_diff (const Tp &_lhs, const Tp &_rhs, type_list<>, int) -> decltype(std::begin(_lhs), Tp{})
 
template<typename Tp , size_t... Idx>
auto tim::math::percent_diff (const Tp &_lhs, const Tp &_rhs, index_sequence< Idx... >,...) -> decltype(std::get< 0 >(_lhs), Tp{})
 
template<typename Tp >
Tp tim::math::percent_diff (const Tp &, const Tp &)