gem5 [DEVELOP-FOR-25.0]
Loading...
Searching...
No Matches
gem5::branch_prediction::MultiperspectivePerceptron::HistorySpec Struct Referenceabstract

Base class to implement the predictor tables. More...

#include <multiperspective_perceptron.hh>

Inheritance diagram for gem5::branch_prediction::MultiperspectivePerceptron::HistorySpec:
gem5::branch_prediction::MultiperspectivePerceptron::ACYCLIC gem5::branch_prediction::MultiperspectivePerceptron::BIAS gem5::branch_prediction::MultiperspectivePerceptron::BLURRYPATH gem5::branch_prediction::MultiperspectivePerceptron::GHIST gem5::branch_prediction::MultiperspectivePerceptron::GHISTMODPATH gem5::branch_prediction::MultiperspectivePerceptron::GHISTPATH gem5::branch_prediction::MultiperspectivePerceptron::IMLI gem5::branch_prediction::MultiperspectivePerceptron::LOCAL gem5::branch_prediction::MultiperspectivePerceptron::MODHIST gem5::branch_prediction::MultiperspectivePerceptron::MODPATH gem5::branch_prediction::MultiperspectivePerceptron::PATH gem5::branch_prediction::MultiperspectivePerceptron::RECENCY gem5::branch_prediction::MultiperspectivePerceptron::RECENCYPOS gem5::branch_prediction::MultiperspectivePerceptron::SGHISTPATH

Public Member Functions

 HistorySpec (int _p1, int _p2, int _p3, double _coeff, int _size, int _width, MultiperspectivePerceptron &_mpp)
 
virtual unsigned int getHash (ThreadID tid, Addr pc, Addr pc2, int t) const =0
 Gets the hash to index the table, using the pc of the branch, and the index of the table.
 
virtual void setBitRequirements () const
 Sets the size requirements of the table, used when initializing to set the proper size of the tables.
 

Public Attributes

const int p1
 First parameter.
 
const int p2
 Second parameter.
 
const int p3
 Third parameter.
 
const double coeff
 Coefficient of the feature, models the accuracy of the feature.
 
const int size
 Pre-assigned size in bits assigned to this feature.
 
const int width
 Width of the table in bits.
 
MultiperspectivePerceptronmpp
 Reference to the branch predictor class.
 

Detailed Description

Base class to implement the predictor tables.

Definition at line 238 of file multiperspective_perceptron.hh.

Constructor & Destructor Documentation

◆ HistorySpec()

Member Function Documentation

◆ getHash()

virtual unsigned int gem5::branch_prediction::MultiperspectivePerceptron::HistorySpec::getHash ( ThreadID tid,
Addr pc,
Addr pc2,
int t ) const
pure virtual

◆ setBitRequirements()

Member Data Documentation

◆ coeff

◆ mpp

MultiperspectivePerceptron& gem5::branch_prediction::MultiperspectivePerceptron::HistorySpec::mpp

Reference to the branch predictor class.

Definition at line 253 of file multiperspective_perceptron.hh.

Referenced by gem5::branch_prediction::MultiperspectivePerceptron::ACYCLIC::ACYCLIC(), gem5::branch_prediction::MultiperspectivePerceptron::BIAS::BIAS(), gem5::branch_prediction::MultiperspectivePerceptron::BLURRYPATH::BLURRYPATH(), gem5::branch_prediction::MultiperspectivePerceptron::ACYCLIC::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::BLURRYPATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::GHIST::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::GHISTMODPATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::GHISTPATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::IMLI::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::LOCAL::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::MODHIST::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::MODPATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::PATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::RECENCY::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::RECENCYPOS::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::SGHISTPATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::GHIST::GHIST(), gem5::branch_prediction::MultiperspectivePerceptron::GHISTMODPATH::GHISTMODPATH(), gem5::branch_prediction::MultiperspectivePerceptron::GHISTPATH::GHISTPATH(), HistorySpec(), gem5::branch_prediction::MultiperspectivePerceptron::IMLI::IMLI(), gem5::branch_prediction::MultiperspectivePerceptron::LOCAL::LOCAL(), gem5::branch_prediction::MultiperspectivePerceptron::MODHIST::MODHIST(), gem5::branch_prediction::MultiperspectivePerceptron::MODPATH::MODPATH(), gem5::branch_prediction::MultiperspectivePerceptron::PATH::PATH(), gem5::branch_prediction::MultiperspectivePerceptron::RECENCY::RECENCY(), gem5::branch_prediction::MultiperspectivePerceptron::RECENCYPOS::RECENCYPOS(), gem5::branch_prediction::MultiperspectivePerceptron::ACYCLIC::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::BLURRYPATH::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::GHIST::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::GHISTMODPATH::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::GHISTPATH::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::IMLI::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::LOCAL::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::MODHIST::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::MODPATH::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::PATH::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::RECENCY::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::RECENCYPOS::setBitRequirements(), and gem5::branch_prediction::MultiperspectivePerceptron::SGHISTPATH::SGHISTPATH().

◆ p1

const int gem5::branch_prediction::MultiperspectivePerceptron::HistorySpec::p1

First parameter.

Definition at line 241 of file multiperspective_perceptron.hh.

Referenced by gem5::branch_prediction::MultiperspectivePerceptron::ACYCLIC::ACYCLIC(), gem5::branch_prediction::MultiperspectivePerceptron::BLURRYPATH::BLURRYPATH(), gem5::branch_prediction::MultiperspectivePerceptron::ACYCLIC::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::BLURRYPATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::GHIST::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::GHISTMODPATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::GHISTPATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::IMLI::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::LOCAL::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::MODHIST::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::MODPATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::PATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::RECENCY::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::RECENCYPOS::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::SGHISTPATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::GHIST::GHIST(), gem5::branch_prediction::MultiperspectivePerceptron::GHISTMODPATH::GHISTMODPATH(), gem5::branch_prediction::MultiperspectivePerceptron::GHISTPATH::GHISTPATH(), HistorySpec(), gem5::branch_prediction::MultiperspectivePerceptron::IMLI::IMLI(), gem5::branch_prediction::MultiperspectivePerceptron::LOCAL::LOCAL(), gem5::branch_prediction::MultiperspectivePerceptron::MODHIST::MODHIST(), gem5::branch_prediction::MultiperspectivePerceptron::MODPATH::MODPATH(), gem5::branch_prediction::MultiperspectivePerceptron::PATH::PATH(), gem5::branch_prediction::MultiperspectivePerceptron::RECENCY::RECENCY(), gem5::branch_prediction::MultiperspectivePerceptron::RECENCYPOS::RECENCYPOS(), gem5::branch_prediction::MultiperspectivePerceptron::ACYCLIC::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::BLURRYPATH::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::GHISTMODPATH::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::GHISTPATH::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::IMLI::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::MODHIST::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::MODPATH::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::PATH::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::RECENCY::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::RECENCYPOS::setBitRequirements(), and gem5::branch_prediction::MultiperspectivePerceptron::SGHISTPATH::SGHISTPATH().

◆ p2

const int gem5::branch_prediction::MultiperspectivePerceptron::HistorySpec::p2

Second parameter.

Definition at line 243 of file multiperspective_perceptron.hh.

Referenced by gem5::branch_prediction::MultiperspectivePerceptron::ACYCLIC::ACYCLIC(), gem5::branch_prediction::MultiperspectivePerceptron::BLURRYPATH::BLURRYPATH(), gem5::branch_prediction::MultiperspectivePerceptron::ACYCLIC::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::BLURRYPATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::GHIST::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::GHISTMODPATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::GHISTPATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::MODHIST::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::MODPATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::PATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::RECENCY::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::SGHISTPATH::getHash(), gem5::branch_prediction::MultiperspectivePerceptron::GHIST::GHIST(), gem5::branch_prediction::MultiperspectivePerceptron::GHISTMODPATH::GHISTMODPATH(), gem5::branch_prediction::MultiperspectivePerceptron::GHISTPATH::GHISTPATH(), HistorySpec(), gem5::branch_prediction::MultiperspectivePerceptron::MODHIST::MODHIST(), gem5::branch_prediction::MultiperspectivePerceptron::MODPATH::MODPATH(), gem5::branch_prediction::MultiperspectivePerceptron::PATH::PATH(), gem5::branch_prediction::MultiperspectivePerceptron::RECENCY::RECENCY(), gem5::branch_prediction::MultiperspectivePerceptron::BLURRYPATH::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::GHIST::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::GHISTMODPATH::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::MODHIST::setBitRequirements(), gem5::branch_prediction::MultiperspectivePerceptron::MODPATH::setBitRequirements(), and gem5::branch_prediction::MultiperspectivePerceptron::SGHISTPATH::SGHISTPATH().

◆ p3

◆ size

◆ width


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

Generated on Mon May 26 2025 09:19:30 for gem5 by doxygen 1.13.2