77 return {
"+",
"-",
"x",
"/",
"exp",
"log",
"GM-R(T)",
78 "GM-R(U)",
"GM-W(T)",
"GM-W(U)",
"CM-R(T)",
"CM-R(U)",
"CM-W(T)",
"CM-W(U)",
79 "LM-R(T)",
"LM-W(T)",
"calls(ext)",
"calls(int)",
"compare",
"unary",
"conditional"};
83 std::vector<std::string>
row;
std::string to_string(const T &obj)
PerfStat operator+(const PerfStat &first, const PerfStat &second)
encapsulates code generation backend implementations
Implement class for performance statistics.
static struct table * table
Helper class to collect performance statistics.
void print(std::stringstream &stream) const
int n_unique_global_write
std::vector< std::string > values() const
int n_int_func_call
mod functions (before/after inlining)
int n_local_read
cheap : typically local variables in mod file means registers
int n_global_read
expensive : typically access to dynamically allocated memory
int n_ext_func_call
could be external math funcs
int n_add
basic ops (<= 1 cycle)
int n_unique_constant_read
int n_unique_constant_write
std::string title
name for pretty-printing
int n_constant_read
could be optimized : access to variables that could be read-only in this case write counts are typica...
static std::vector< std::string > keys()
int n_exp
expensive functions : commonly used functions in mod files
Class to construct and pretty-print tabular data.
Implement generic table data structure.