docc 0.8.3 (0d44999b)
C++ API Reference
Loading...
Searching...
No Matches
sdfg::passes::CompileStatistics Class Reference

#include <sdfg/passes/statistics.h>

Inheritance diagram for sdfg::passes::CompileStatistics:
[legend]

Public Types

enum class  ReportLevel { PipelineTotalsOnly = 0 , SummarizePipelineContentsAndAnalysis = 1 , All = 2 }

Public Member Functions

void enter_analysis (const std::string &name)
void exit_analysis ()
void enter_pass (const std::string &name)
void exit_pass ()
void enter_pipeline (const std::string &name)
void exit_pipeline ()
void enter_stage (const std::string &name)
void exit_stage ()
std::string summary ()
std::string report (ReportLevel detail)
Public Member Functions inherited from sdfg::passes::HierarchicalStatistics
virtual ~HierarchicalStatistics ()=default
Node * enter_scope (const std::string &name, const std::string &scope_type)
void exit_scope ()
void set_metric (const std::string &key, uint64_t value)
void add_metric (const std::string &key, uint64_t value)
void clear ()

Static Public Member Functions

static CompileStatistics & instance ()
static void enter_analysis_if_enabled (const std::string &name)
static void exit_analysis_if_enabled ()
static void enter_pass_if_enabled (const std::string &name)
static void exit_pass_if_enabled ()
static void enter_pipeline_if_enabled (const std::string &name)
static void exit_pipeline_if_enabled ()
static void enter_stage_if_enabled (const std::string &name)
static void exit_stage_if_enabled ()
static void set_metric_if_enabled (const std::string &key, uint64_t value)
static void add_metric_if_enabled (const std::string &key, uint64_t value)
static bool enabled ()
static void enable ()
static void disable ()

Protected Member Functions

RemapAction custom_print_node (std::ostream &out, const Node &node, int depth) override
Protected Member Functions inherited from sdfg::passes::HierarchicalStatistics
void print_node (std::ostream &stream, const HierarchicalStatistics::Node &node, int depth)
std::string report (const std::string &title)

Static Protected Member Functions

static void summarize_pipeline_passes (std::ostream &out, const Node &node, int depth)
Static Protected Member Functions inherited from sdfg::passes::HierarchicalStatistics
static void print_node_self (std::ostream &stream, const Node &node, int depth)

Protected Attributes

ReportLevel report_detail_ = ReportLevel::SummarizePipelineContentsAndAnalysis
Protected Attributes inherited from sdfg::passes::HierarchicalStatistics
std::vector< std::unique_ptr< Node > > roots_
Node * current_ = nullptr

Static Protected Attributes

static bool enabled_
static constexpr const char * ANALYSIS_SCOPE = "Analysis"
static constexpr const char * ANALYSIS_MGR_SCOPE = "AnalysisMgr"
static constexpr const char * PASS_SCOPE = "Pass"
static constexpr const char * PIPELINE_SCOPE = "Pipeline"
static constexpr const char * STAGE_SCOPE = "Stage"

Additional Inherited Members

Protected Types inherited from sdfg::passes::HierarchicalStatistics
enum class  RemapAction { Proceed , NoDescend , Skip }

Member Enumeration Documentation

◆ ReportLevel

Enumerator
PipelineTotalsOnly 
SummarizePipelineContentsAndAnalysis 
All 

Member Function Documentation

◆ add_metric_if_enabled()

void sdfg::passes::CompileStatistics::add_metric_if_enabled ( const std::string & key,
uint64_t value )
inlinestatic

◆ custom_print_node()

RemapAction sdfg::passes::CompileStatistics::custom_print_node ( std::ostream & out,
const Node & node,
int depth )
overrideprotectedvirtual

◆ disable()

void sdfg::passes::CompileStatistics::disable ( )
inlinestatic

◆ enable()

void sdfg::passes::CompileStatistics::enable ( )
inlinestatic

◆ enabled()

bool sdfg::passes::CompileStatistics::enabled ( )
inlinestatic

◆ enter_analysis()

void sdfg::passes::CompileStatistics::enter_analysis ( const std::string & name)
inline

◆ enter_analysis_if_enabled()

void sdfg::passes::CompileStatistics::enter_analysis_if_enabled ( const std::string & name)
inlinestatic

◆ enter_pass()

void sdfg::passes::CompileStatistics::enter_pass ( const std::string & name)
inline

◆ enter_pass_if_enabled()

void sdfg::passes::CompileStatistics::enter_pass_if_enabled ( const std::string & name)
inlinestatic

◆ enter_pipeline()

void sdfg::passes::CompileStatistics::enter_pipeline ( const std::string & name)
inline

◆ enter_pipeline_if_enabled()

void sdfg::passes::CompileStatistics::enter_pipeline_if_enabled ( const std::string & name)
inlinestatic

◆ enter_stage()

void sdfg::passes::CompileStatistics::enter_stage ( const std::string & name)
inline

◆ enter_stage_if_enabled()

void sdfg::passes::CompileStatistics::enter_stage_if_enabled ( const std::string & name)
inlinestatic

◆ exit_analysis()

void sdfg::passes::CompileStatistics::exit_analysis ( )
inline

◆ exit_analysis_if_enabled()

void sdfg::passes::CompileStatistics::exit_analysis_if_enabled ( )
inlinestatic

◆ exit_pass()

void sdfg::passes::CompileStatistics::exit_pass ( )
inline

◆ exit_pass_if_enabled()

void sdfg::passes::CompileStatistics::exit_pass_if_enabled ( )
inlinestatic

◆ exit_pipeline()

void sdfg::passes::CompileStatistics::exit_pipeline ( )
inline

◆ exit_pipeline_if_enabled()

void sdfg::passes::CompileStatistics::exit_pipeline_if_enabled ( )
inlinestatic

◆ exit_stage()

void sdfg::passes::CompileStatistics::exit_stage ( )
inline

◆ exit_stage_if_enabled()

void sdfg::passes::CompileStatistics::exit_stage_if_enabled ( )
inlinestatic

◆ instance()

CompileStatistics & sdfg::passes::CompileStatistics::instance ( )
inlinestatic

◆ report()

std::string sdfg::passes::CompileStatistics::report ( ReportLevel detail)

◆ set_metric_if_enabled()

void sdfg::passes::CompileStatistics::set_metric_if_enabled ( const std::string & key,
uint64_t value )
inlinestatic

◆ summarize_pipeline_passes()

void sdfg::passes::CompileStatistics::summarize_pipeline_passes ( std::ostream & out,
const Node & node,
int depth )
staticprotected

◆ summary()

std::string sdfg::passes::CompileStatistics::summary ( )

Member Data Documentation

◆ ANALYSIS_MGR_SCOPE

const char* sdfg::passes::CompileStatistics::ANALYSIS_MGR_SCOPE = "AnalysisMgr"
staticconstexprprotected

◆ ANALYSIS_SCOPE

const char* sdfg::passes::CompileStatistics::ANALYSIS_SCOPE = "Analysis"
staticconstexprprotected

◆ enabled_

bool sdfg::passes::CompileStatistics::enabled_
staticprotected

◆ PASS_SCOPE

const char* sdfg::passes::CompileStatistics::PASS_SCOPE = "Pass"
staticconstexprprotected

◆ PIPELINE_SCOPE

const char* sdfg::passes::CompileStatistics::PIPELINE_SCOPE = "Pipeline"
staticconstexprprotected

◆ report_detail_

ReportLevel sdfg::passes::CompileStatistics::report_detail_ = ReportLevel::SummarizePipelineContentsAndAnalysis
protected

◆ STAGE_SCOPE

const char* sdfg::passes::CompileStatistics::STAGE_SCOPE = "Stage"
staticconstexprprotected

The documentation for this class was generated from the following file: