| souffle
    2.0.2-371-g6315b36
    | 
Goal: reorder based on the given profiling information Metric: cost(atom_R) = log(|atom_R|) * #free/#args. More...
#include <SipsMetric.h>


| Public Member Functions | |
| ProfileUseSips (const analysis::ProfileUseAnalysis &profileUse) | |
|  Public Member Functions inherited from souffle::ast::SipsMetric | |
| std::vector< unsigned int > | getReordering (const Clause *clause) const | 
| Determines the new ordering of a clause after the SIPS is applied.  More... | |
| virtual | ~SipsMetric ()=default | 
| Protected Member Functions | |
| std::vector< double > | evaluateCosts (const std::vector< Atom * > atoms, const BindingStore &bindingStore) const override | 
| Evaluates the cost of choosing each atom next in the current schedule.  More... | |
| Private Attributes | |
| const analysis::ProfileUseAnalysis & | profileUse | 
| Additional Inherited Members | |
|  Static Public Member Functions inherited from souffle::ast::SipsMetric | |
| static std::unique_ptr< SipsMetric > | create (const std::string &heuristic, const TranslationUnit &tu) | 
| Create a SIPS metric based on a given heuristic.  More... | |
Goal: reorder based on the given profiling information Metric: cost(atom_R) = log(|atom_R|) * #free/#args.
Definition at line 138 of file SipsMetric.h.
| 
 | inline | 
Definition at line 140 of file SipsMetric.h.
| 
 | overrideprotectedvirtual | 
Evaluates the cost of choosing each atom next in the current schedule.
| atoms | atoms to choose from; may be nullptr | 
| bindingStore | the variables already bound to a value | 
Implements souffle::ast::SipsMetric.
Definition at line 242 of file SipsMetric.cpp.
References souffle::ast::analysis::ProfileUseAnalysis::getRelationSize(), and profileUse.

| 
 | private | 
Definition at line 147 of file SipsMetric.h.
Referenced by evaluateCosts().
 1.8.17
 1.8.17