#include <phase_core.h>
Benchmark phase core.
Implementation of the Phase interface.
Definition at line 26 of file phase_core.h.
◆ PhaseCore() [1/3] CppBenchmark::PhaseCore::PhaseCore ( const std::string & name ) inlineexplicitCreate a new benchmark phase core with a given name.
Definition at line 40 of file phase_core.h.
◆ PhaseCore() [2/3] CppBenchmark::PhaseCore::PhaseCore ( const PhaseCore & ) delete ◆ PhaseCore() [3/3] CppBenchmark::PhaseCore::PhaseCore ( PhaseCore && ) delete ◆ ~PhaseCore() virtual CppBenchmark::PhaseCore::~PhaseCore ( ) virtualdefault ◆ current()Current benchmark phase metrics.
Definition at line 50 of file phase_core.h.
◆ InitLatencyHistogram() void CppBenchmark::PhaseCore::InitLatencyHistogram ( const std::tuple< int64_t, int64_t, int > & latency ) inlineprotectednoexceptInitialize latency histogram for the current phase.
Definition at line 81 of file phase_core.h.
◆ MergeMetrics() [1/2] void CppBenchmark::PhaseCore::MergeMetrics ( ) inlineprotectedMerge phase metrics (current to result)
Definition at line 99 of file phase_core.h.
◆ MergeMetrics() [2/2] void CppBenchmark::PhaseCore::MergeMetrics ( PhaseCore & phase ) inlineprotectedMerge metrics of the two phases.
Definition at line 102 of file phase_core.h.
◆ metrics() const PhaseMetrics & CppBenchmark::PhaseCore::metrics ( ) const inlineoverridevirtualnoexcept ◆ name() const std::string & CppBenchmark::PhaseCore::name ( ) const inlineoverridevirtualnoexcept ◆ operator=() [1/2] ◆ operator=() [2/2] ◆ PrintLatencyHistogram() void CppBenchmark::PhaseCore::PrintLatencyHistogram ( FILE * file, int32_t resolution ) const inlineprotectednoexceptPrint result latency histogram.
Definition at line 88 of file phase_core.h.
◆ ResetMetrics() void CppBenchmark::PhaseCore::ResetMetrics ( ) inlineprotectednoexcept ◆ ScopePhase() std::shared_ptr< PhaseScope > CppBenchmark::PhaseCore::ScopePhase ( const std::string & phase ) inlineoverridevirtualStart a new sub-phase with a given name in a single-thread environment and wrap it in a PhaseScope.
Please note the method is not thread-safe and should not be called in multi-thread environment!
Implements CppBenchmark::Phase.
Definition at line 58 of file phase_core.h.
◆ ScopePhaseThreadSafe() std::shared_ptr< PhaseScope > CppBenchmark::PhaseCore::ScopePhaseThreadSafe ( const std::string & phase ) inlineoverridevirtualStart a new sub-phase with a given name in a multi-thread environment and wrap it in a PhaseScope.
Please note the method is thread-safe and might be called in multi-thread environment!
Implements CppBenchmark::Phase.
Definition at line 60 of file phase_core.h.
◆ StartCollectingMetrics() void CppBenchmark::PhaseCore::StartCollectingMetrics ( ) inlineprotectednoexceptStart collecting metrics in the current phase.
Definition at line 92 of file phase_core.h.
◆ StartPhase() std::shared_ptr< Phase > CppBenchmark::PhaseCore::StartPhase ( const std::string & phase ) overridevirtualStart a new sub-phase with a given name in a single-thread environment.
This method will create or get existent sub-phase with a given name, start benchmark measurement and return it as a shared pointer. Please note the method is not thread-safe and should not be called in multi-thread environment!
Implements CppBenchmark::Phase.
Definition at line 15 of file phase_core.cpp.
◆ StartPhaseThreadSafe() std::shared_ptr< Phase > CppBenchmark::PhaseCore::StartPhaseThreadSafe ( const std::string & phase ) overridevirtualStart a new sub-phase with a given name in a multi-thread environment.
This method will create or get existent sub-phase with a given name, start benchmark measurement and return it as a shared pointer. Please note the method is thread-safe and might be called in multi-thread environment!
Implements CppBenchmark::Phase.
Definition at line 38 of file phase_core.cpp.
◆ StopCollectingMetrics() void CppBenchmark::PhaseCore::StopCollectingMetrics ( ) inlineprotectednoexceptStop collecting metrics in the current phase.
Definition at line 95 of file phase_core.h.
◆ StopPhase() void CppBenchmark::PhaseCore::StopPhase ( ) inlineoverridevirtual ◆ Benchmark ◆ BenchmarkBase ◆ BenchmarkPC ◆ BenchmarkThreads ◆ Executor ◆ Launcher ◆ _child std::vector<std::shared_ptr<PhaseCore> > CppBenchmark::PhaseCore::_child protected ◆ _metrics_current ◆ _metrics_result ◆ _mutex std::mutex CppBenchmark::PhaseCore::_mutex protected ◆ _name std::string CppBenchmark::PhaseCore::_name protected ◆ _thread uint64_t CppBenchmark::PhaseCore::_thread protectedThe documentation for this class was generated from the following files:
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4