gem5
v20.1.0.0
|
#include <multiperspective_perceptron.hh>
Public Member Functions | |
RECENCYPOS (int p1, double coeff, int size, int width, MultiperspectivePerceptron &mpp) | |
unsigned int | getHash (ThreadID tid, Addr pc, Addr pc2, int t) const override |
Gets the hash to index the table, using the pc of the branch, and the index of the table. More... | |
void | setBitRequirements () const override |
Sets the size requirements of the table, used when initializing to set the proper size of the tables. More... | |
Public Member Functions inherited from MultiperspectivePerceptron::HistorySpec | |
HistorySpec (int _p1, int _p2, int _p3, double _coeff, int _size, int _width, MultiperspectivePerceptron &_mpp) | |
Static Public Member Functions | |
static unsigned int | hash (const std::vector< unsigned int short > &recency_stack, const std::vector< int > &table_sizes, unsigned short int pc, int l, int t) |
Additional Inherited Members | |
Public Attributes inherited from MultiperspectivePerceptron::HistorySpec | |
const int | p1 |
First parameter. More... | |
const int | p2 |
Second parameter. More... | |
const int | p3 |
Third parameter. More... | |
const double | coeff |
Coefficient of the feature, models the accuracy of the feature. More... | |
const int | size |
Pre-assigned size in bits assigned to this feature. More... | |
const int | width |
Width of the table in bits More... | |
MultiperspectivePerceptron & | mpp |
Reference to the branch predictor class. More... | |
Definition at line 934 of file multiperspective_perceptron.hh.
|
inline |
Definition at line 936 of file multiperspective_perceptron.hh.
|
inlineoverridevirtual |
Gets the hash to index the table, using the pc of the branch, and the index of the table.
tid | Thread ID of the branch |
pc | address of the branch |
pc2 | address of the branch shifted 2 bits to the right |
t | integer index of the table |
Implements MultiperspectivePerceptron::HistorySpec.
Definition at line 941 of file multiperspective_perceptron.hh.
References hash(), MultiperspectivePerceptron::HistorySpec::mpp, MultiperspectivePerceptron::HistorySpec::p1, ArmISA::t, MultiperspectivePerceptron::table_sizes, and MultiperspectivePerceptron::threadData.
|
inlinestatic |
Definition at line 948 of file multiperspective_perceptron.hh.
References ArmISA::i, MipsISA::l, MipsISA::pc, ArmISA::t, and MultiperspectivePerceptron::table_sizes.
Referenced by getHash(), and MultiperspectivePerceptron::getIndex().
|
inlineoverridevirtual |
Sets the size requirements of the table, used when initializing to set the proper size of the tables.
Reimplemented from MultiperspectivePerceptron::HistorySpec.
Definition at line 966 of file multiperspective_perceptron.hh.
References MultiperspectivePerceptron::assoc, MultiperspectivePerceptron::doing_recency, MultiperspectivePerceptron::HistorySpec::mpp, and MultiperspectivePerceptron::HistorySpec::p1.