Jlm
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Static Private Attributes | List of all members
jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics Class Referencefinal

Region-aware mod/ref summarizer statistics. More...

Inheritance diagram for jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics:
Inheritance graph
[legend]
Collaboration diagram for jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics:
Collaboration graph
[legend]

Public Member Functions

 ~Statistics () override=default
 
 Statistics (const rvsdg::RvsdgModule &rvsdgModule, const PointsToGraph &pointsToGraph)
 
void startCallGraphStatistics ()
 
void stopCallGraphStatistics (size_t numSccs, size_t numFunctionsCallingSetjmp)
 
void StartCreateSimpleAllocasSetStatistics ()
 
void StopCreateSimpleAllocasSetStatistics (uint64_t numSimpleAllocas)
 
void StartCreateNonReentrantAllocaSetsStatistics ()
 
void StopCreateNonReentrantAllocaSetsStatistics (size_t numNonReentrantAllocas)
 
void StartAnnotationStatistics ()
 
void StopAnnotationStatistics ()
 
void StartSolvingStatistics ()
 
void StopSolvingStatistics ()
 
void startReadOnlyMemoryDetectionStatistics ()
 
void stopReadOnlyMemoryDetectionStatistics (size_t numReadOnlyMemoryNodesDetected)
 
void startModRefSetMaterializationStatistics ()
 
void stopModRefSetMaterializationStatistics (size_t numModRefSetsMaterialized, size_t modRefSetSizeBeforeMaterialization, size_t modRefSetSizeAfterFiltering, size_t numModRefSetsWithEffectOnExternal, size_t numModRefSetsCallingExternalFunction, size_t modRefSetSizeAfterMaterialization)
 
- Public Member Functions inherited from jlm::util::Statistics
 Statistics (const Statistics::Id &statisticsId, util::FilePath sourceFile)
 
Statistics::Id GetId () const noexcept
 
std::string_view GetName () const
 
const util::FilePathGetSourceFile () const
 
std::string Serialize (char fieldSeparator, char nameValueSeparator) const
 
bool HasMeasurement (const std::string &name) const noexcept
 
const MeasurementGetMeasurement (const std::string &name) const
 
template<typename T >
const T & GetMeasurementValue (const std::string &name) const
 
IteratorRange< MeasurementList::const_iterator > GetMeasurements () const
 
bool HasTimer (const std::string &name) const noexcept
 
size_t GetTimerElapsedNanoseconds (const std::string &name) const
 
IteratorRange< TimerList::const_iterator > GetTimers () const
 

Static Public Member Functions

static std::unique_ptr< StatisticsCreate (const rvsdg::RvsdgModule &rvsdgModule, const PointsToGraph &pointsToGraph)
 

Static Private Attributes

static constexpr auto NumRvsdgRegionsLabel_ = "#RvsdgRegions"
 
static constexpr auto NumSimpleAllocas_ = "#SimpleAllocas"
 
static constexpr auto NumNonReentrantAllocas_ = "#NonReentrantAllocas"
 
static constexpr auto NumCallGraphSccs_ = "#CallGraphSccs"
 
static constexpr auto NumFunctionsCallingSetjmp_ = "#FunctionsCallingSetjmp"
 
static constexpr auto NumCallGraphSccsCanCallExternal_ = "#CallGraphSccsCanCallExternal"
 
static constexpr auto NumReadOnlyMemoryNodesDetectedLabel_ = "#ReadOnlyMemoryNodesDetected"
 
static constexpr auto NumModRefSetsMaterializedLabel_ = "#ModRefSetsMaterialized"
 
static constexpr auto ModRefSetSizeBeforeMaterializationLabel_
 
static constexpr auto ModRefSetSizeAfterFilteringLabel_ = "ModRefSetSizeAfterFiltering"
 
static constexpr auto NumModRefSetsWithEffectOnExternalLabel_ = "#ModRefSetsWithEffectOnExternal"
 
static constexpr auto NumModRefSetsCallingExternalFunctionLabel_
 
static constexpr auto ModRefSetSizeAfterMaterializationLabel_
 
static constexpr auto CallGraphTimer_ = "CallGraphTimer"
 
static constexpr auto AllocasDeadInSccsTimer_ = "AllocasDeadInSccsTimer"
 
static constexpr auto SimpleAllocasSetTimer_ = "SimpleAllocasSetTimer"
 
static constexpr auto NonReentrantAllocaSetsTimer_ = "NonReentrantAllocaSetsTimer"
 
static constexpr auto AnnotationTimer_ = "AnnotationTimer"
 
static constexpr auto SolvingTimer_ = "SolvingTimer"
 
static constexpr auto ReadOnlyDetectionTimer_ = "ReadOnlyDetectionTimer"
 
static constexpr auto ModRefSetMaterializationTimer_ = "ModRefSetMaterializationTimer"
 

Additional Inherited Members

- Public Types inherited from jlm::util::Statistics
enum class  Id {
  FirstEnumValue , AggregateAllocaSplitting , Aggregation , AgnosticModRefSummarizer ,
  AliasAnalysisPrecisionEvaluation , AndersenAnalysis , Annotation , CommonNodeElimination ,
  ControlFlowRecovery , DataNodeToDelta , DeadNodeElimination , FunctionInlining ,
  IfConversion , InvariantValueRedirection , IOBarrierElimination , JlmToRvsdgConversion ,
  LoopStrengthReduction , LoopUnrolling , LoopUnswitching , MemoryStateEncoder ,
  PullNodes , PushNodes , ReduceNodes , RegionAwareModRefSummarizer ,
  RvsdgConstruction , RvsdgDestruction , RvsdgOptimization , RvsdgTreePrinter ,
  ScalarEvolution , StoreValueForwarding , LastEnumValue
}
 
using Measurement = std::variant< std::string, int64_t, uint64_t, double >
 
using MeasurementList = std::list< std::pair< std::string, Measurement > >
 
using TimerList = std::list< std::pair< std::string, util::Timer > >
 
- Protected Member Functions inherited from jlm::util::Statistics
template<typename T >
void AddMeasurement (std::string name, T value)
 
util::TimerAddTimer (std::string name)
 
util::TimerGetTimer (const std::string &name)
 
const util::TimerGetTimer (const std::string &name) const
 

Detailed Description

Region-aware mod/ref summarizer statistics.

The statistics collected when running the region-aware mod/ref summarizer.

See also
RegionAwareModRefSummarizer

Definition at line 82 of file RegionAwareModRefSummarizer.cpp.

Constructor & Destructor Documentation

◆ ~Statistics()

jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::~Statistics ( )
overridevirtualdefault

Reimplemented from jlm::util::Statistics.

◆ Statistics()

jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::Statistics ( const rvsdg::RvsdgModule rvsdgModule,
const PointsToGraph pointsToGraph 
)
inlineexplicit

Definition at line 114 of file RegionAwareModRefSummarizer.cpp.

Member Function Documentation

◆ Create()

static std::unique_ptr< Statistics > jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::Create ( const rvsdg::RvsdgModule rvsdgModule,
const PointsToGraph pointsToGraph 
)
inlinestatic

Definition at line 228 of file RegionAwareModRefSummarizer.cpp.

◆ StartAnnotationStatistics()

void jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::StartAnnotationStatistics ( )
inline

Definition at line 165 of file RegionAwareModRefSummarizer.cpp.

◆ startCallGraphStatistics()

void jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::startCallGraphStatistics ( )
inline

Definition at line 125 of file RegionAwareModRefSummarizer.cpp.

◆ StartCreateNonReentrantAllocaSetsStatistics()

void jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::StartCreateNonReentrantAllocaSetsStatistics ( )
inline

Definition at line 152 of file RegionAwareModRefSummarizer.cpp.

◆ StartCreateSimpleAllocasSetStatistics()

void jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::StartCreateSimpleAllocasSetStatistics ( )
inline

Definition at line 139 of file RegionAwareModRefSummarizer.cpp.

◆ startModRefSetMaterializationStatistics()

void jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::startModRefSetMaterializationStatistics ( )
inline

Definition at line 202 of file RegionAwareModRefSummarizer.cpp.

◆ startReadOnlyMemoryDetectionStatistics()

void jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::startReadOnlyMemoryDetectionStatistics ( )
inline

Definition at line 189 of file RegionAwareModRefSummarizer.cpp.

◆ StartSolvingStatistics()

void jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::StartSolvingStatistics ( )
inline

Definition at line 177 of file RegionAwareModRefSummarizer.cpp.

◆ StopAnnotationStatistics()

void jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::StopAnnotationStatistics ( )
inline

Definition at line 171 of file RegionAwareModRefSummarizer.cpp.

◆ stopCallGraphStatistics()

void jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::stopCallGraphStatistics ( size_t  numSccs,
size_t  numFunctionsCallingSetjmp 
)
inline

Definition at line 131 of file RegionAwareModRefSummarizer.cpp.

◆ StopCreateNonReentrantAllocaSetsStatistics()

void jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::StopCreateNonReentrantAllocaSetsStatistics ( size_t  numNonReentrantAllocas)
inline

Definition at line 158 of file RegionAwareModRefSummarizer.cpp.

◆ StopCreateSimpleAllocasSetStatistics()

void jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::StopCreateSimpleAllocasSetStatistics ( uint64_t  numSimpleAllocas)
inline

Definition at line 145 of file RegionAwareModRefSummarizer.cpp.

◆ stopModRefSetMaterializationStatistics()

void jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::stopModRefSetMaterializationStatistics ( size_t  numModRefSetsMaterialized,
size_t  modRefSetSizeBeforeMaterialization,
size_t  modRefSetSizeAfterFiltering,
size_t  numModRefSetsWithEffectOnExternal,
size_t  numModRefSetsCallingExternalFunction,
size_t  modRefSetSizeAfterMaterialization 
)
inline

Definition at line 208 of file RegionAwareModRefSummarizer.cpp.

◆ stopReadOnlyMemoryDetectionStatistics()

void jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::stopReadOnlyMemoryDetectionStatistics ( size_t  numReadOnlyMemoryNodesDetected)
inline

Definition at line 195 of file RegionAwareModRefSummarizer.cpp.

◆ StopSolvingStatistics()

void jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::StopSolvingStatistics ( )
inline

Definition at line 183 of file RegionAwareModRefSummarizer.cpp.

Member Data Documentation

◆ AllocasDeadInSccsTimer_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::AllocasDeadInSccsTimer_ = "AllocasDeadInSccsTimer"
staticconstexprprivate

Definition at line 103 of file RegionAwareModRefSummarizer.cpp.

◆ AnnotationTimer_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::AnnotationTimer_ = "AnnotationTimer"
staticconstexprprivate

Definition at line 106 of file RegionAwareModRefSummarizer.cpp.

◆ CallGraphTimer_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::CallGraphTimer_ = "CallGraphTimer"
staticconstexprprivate

Definition at line 102 of file RegionAwareModRefSummarizer.cpp.

◆ ModRefSetMaterializationTimer_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::ModRefSetMaterializationTimer_ = "ModRefSetMaterializationTimer"
staticconstexprprivate

Definition at line 109 of file RegionAwareModRefSummarizer.cpp.

◆ ModRefSetSizeAfterFilteringLabel_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::ModRefSetSizeAfterFilteringLabel_ = "ModRefSetSizeAfterFiltering"
staticconstexprprivate

Definition at line 95 of file RegionAwareModRefSummarizer.cpp.

◆ ModRefSetSizeAfterMaterializationLabel_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::ModRefSetSizeAfterMaterializationLabel_
staticconstexprprivate
Initial value:
=
"ModRefSetSizeAfterMaterialization"

Definition at line 99 of file RegionAwareModRefSummarizer.cpp.

◆ ModRefSetSizeBeforeMaterializationLabel_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::ModRefSetSizeBeforeMaterializationLabel_
staticconstexprprivate
Initial value:
=
"ModRefSetSizeBeforeMaterialization"

Definition at line 93 of file RegionAwareModRefSummarizer.cpp.

◆ NonReentrantAllocaSetsTimer_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::NonReentrantAllocaSetsTimer_ = "NonReentrantAllocaSetsTimer"
staticconstexprprivate

Definition at line 105 of file RegionAwareModRefSummarizer.cpp.

◆ NumCallGraphSccs_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::NumCallGraphSccs_ = "#CallGraphSccs"
staticconstexprprivate

Definition at line 87 of file RegionAwareModRefSummarizer.cpp.

◆ NumCallGraphSccsCanCallExternal_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::NumCallGraphSccsCanCallExternal_ = "#CallGraphSccsCanCallExternal"
staticconstexprprivate

Definition at line 89 of file RegionAwareModRefSummarizer.cpp.

◆ NumFunctionsCallingSetjmp_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::NumFunctionsCallingSetjmp_ = "#FunctionsCallingSetjmp"
staticconstexprprivate

Definition at line 88 of file RegionAwareModRefSummarizer.cpp.

◆ NumModRefSetsCallingExternalFunctionLabel_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::NumModRefSetsCallingExternalFunctionLabel_
staticconstexprprivate
Initial value:
=
"#ModRefSetsCallingExternalFunction"

Definition at line 97 of file RegionAwareModRefSummarizer.cpp.

◆ NumModRefSetsMaterializedLabel_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::NumModRefSetsMaterializedLabel_ = "#ModRefSetsMaterialized"
staticconstexprprivate

Definition at line 92 of file RegionAwareModRefSummarizer.cpp.

◆ NumModRefSetsWithEffectOnExternalLabel_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::NumModRefSetsWithEffectOnExternalLabel_ = "#ModRefSetsWithEffectOnExternal"
staticconstexprprivate

Definition at line 96 of file RegionAwareModRefSummarizer.cpp.

◆ NumNonReentrantAllocas_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::NumNonReentrantAllocas_ = "#NonReentrantAllocas"
staticconstexprprivate

Definition at line 86 of file RegionAwareModRefSummarizer.cpp.

◆ NumReadOnlyMemoryNodesDetectedLabel_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::NumReadOnlyMemoryNodesDetectedLabel_ = "#ReadOnlyMemoryNodesDetected"
staticconstexprprivate

Definition at line 90 of file RegionAwareModRefSummarizer.cpp.

◆ NumRvsdgRegionsLabel_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::NumRvsdgRegionsLabel_ = "#RvsdgRegions"
staticconstexprprivate

Definition at line 84 of file RegionAwareModRefSummarizer.cpp.

◆ NumSimpleAllocas_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::NumSimpleAllocas_ = "#SimpleAllocas"
staticconstexprprivate

Definition at line 85 of file RegionAwareModRefSummarizer.cpp.

◆ ReadOnlyDetectionTimer_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::ReadOnlyDetectionTimer_ = "ReadOnlyDetectionTimer"
staticconstexprprivate

Definition at line 108 of file RegionAwareModRefSummarizer.cpp.

◆ SimpleAllocasSetTimer_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::SimpleAllocasSetTimer_ = "SimpleAllocasSetTimer"
staticconstexprprivate

Definition at line 104 of file RegionAwareModRefSummarizer.cpp.

◆ SolvingTimer_

constexpr auto jlm::llvm::aa::RegionAwareModRefSummarizer::Statistics::SolvingTimer_ = "SolvingTimer"
staticconstexprprivate

Definition at line 107 of file RegionAwareModRefSummarizer.cpp.


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