ChampSim
spp Namespace Reference

Classes

class  SIGNATURE_TABLE
 
class  PATTERN_TABLE
 
class  PREFETCH_FILTER
 
class  GLOBAL_REGISTER
 

Enumerations

enum  FILTER_REQUEST { SPP_L2C_PREFETCH , SPP_LLC_PREFETCH , L2C_DEMAND , L2C_EVICT }
 

Functions

uint64_t get_hash (uint64_t key)
 

Variables

constexpr bool LOOKAHEAD_ON = true
 
constexpr bool FILTER_ON = true
 
constexpr bool GHR_ON = true
 
constexpr bool SPP_SANITY_CHECK = true
 
constexpr bool SPP_DEBUG_PRINT = false
 
constexpr std::size_t ST_SET = 1
 
constexpr std::size_t ST_WAY = 256
 
constexpr unsigned ST_TAG_BIT = 16
 
constexpr uint32_t ST_TAG_MASK = ((1 << ST_TAG_BIT) - 1)
 
constexpr unsigned SIG_SHIFT = 3
 
constexpr unsigned SIG_BIT = 12
 
constexpr uint32_t SIG_MASK = ((1 << SIG_BIT) - 1)
 
constexpr unsigned SIG_DELTA_BIT = 7
 
constexpr std::size_t PT_SET = 512
 
constexpr std::size_t PT_WAY = 4
 
constexpr unsigned C_SIG_BIT = 4
 
constexpr unsigned C_DELTA_BIT = 4
 
constexpr uint32_t C_SIG_MAX = ((1 << C_SIG_BIT) - 1)
 
constexpr uint32_t C_DELTA_MAX = ((1 << C_DELTA_BIT) - 1)
 
constexpr unsigned QUOTIENT_BIT = 10
 
constexpr unsigned REMAINDER_BIT = 6
 
constexpr unsigned HASH_BIT = (QUOTIENT_BIT + REMAINDER_BIT + 1)
 
constexpr std::size_t FILTER_SET = (1 << QUOTIENT_BIT)
 
constexpr uint32_t FILL_THRESHOLD = 90
 
constexpr uint32_t PF_THRESHOLD = 25
 
constexpr unsigned GLOBAL_COUNTER_BIT = 10
 
constexpr uint32_t GLOBAL_COUNTER_MAX = ((1 << GLOBAL_COUNTER_BIT) - 1)
 
constexpr std::size_t MAX_GHR_ENTRY = 8
 

Enumeration Type Documentation

◆ FILTER_REQUEST

Enumerator
SPP_L2C_PREFETCH 
SPP_LLC_PREFETCH 
L2C_DEMAND 
L2C_EVICT 

Function Documentation

◆ get_hash()

uint64_t spp::get_hash ( uint64_t  key)

Variable Documentation

◆ C_DELTA_BIT

constexpr unsigned spp::C_DELTA_BIT = 4
constexpr

◆ C_DELTA_MAX

constexpr uint32_t spp::C_DELTA_MAX = ((1 << C_DELTA_BIT) - 1)
constexpr

◆ C_SIG_BIT

constexpr unsigned spp::C_SIG_BIT = 4
constexpr

◆ C_SIG_MAX

constexpr uint32_t spp::C_SIG_MAX = ((1 << C_SIG_BIT) - 1)
constexpr

◆ FILL_THRESHOLD

constexpr uint32_t spp::FILL_THRESHOLD = 90
constexpr

◆ FILTER_ON

constexpr bool spp::FILTER_ON = true
constexpr

◆ FILTER_SET

constexpr std::size_t spp::FILTER_SET = (1 << QUOTIENT_BIT)
constexpr

◆ GHR_ON

constexpr bool spp::GHR_ON = true
constexpr

◆ GLOBAL_COUNTER_BIT

constexpr unsigned spp::GLOBAL_COUNTER_BIT = 10
constexpr

◆ GLOBAL_COUNTER_MAX

constexpr uint32_t spp::GLOBAL_COUNTER_MAX = ((1 << GLOBAL_COUNTER_BIT) - 1)
constexpr

◆ HASH_BIT

constexpr unsigned spp::HASH_BIT = (QUOTIENT_BIT + REMAINDER_BIT + 1)
constexpr

◆ LOOKAHEAD_ON

constexpr bool spp::LOOKAHEAD_ON = true
constexpr

◆ MAX_GHR_ENTRY

constexpr std::size_t spp::MAX_GHR_ENTRY = 8
constexpr

◆ PF_THRESHOLD

constexpr uint32_t spp::PF_THRESHOLD = 25
constexpr

◆ PT_SET

constexpr std::size_t spp::PT_SET = 512
constexpr

◆ PT_WAY

constexpr std::size_t spp::PT_WAY = 4
constexpr

◆ QUOTIENT_BIT

constexpr unsigned spp::QUOTIENT_BIT = 10
constexpr

◆ REMAINDER_BIT

constexpr unsigned spp::REMAINDER_BIT = 6
constexpr

◆ SIG_BIT

constexpr unsigned spp::SIG_BIT = 12
constexpr

◆ SIG_DELTA_BIT

constexpr unsigned spp::SIG_DELTA_BIT = 7
constexpr

◆ SIG_MASK

constexpr uint32_t spp::SIG_MASK = ((1 << SIG_BIT) - 1)
constexpr

◆ SIG_SHIFT

constexpr unsigned spp::SIG_SHIFT = 3
constexpr

◆ SPP_DEBUG_PRINT

constexpr bool spp::SPP_DEBUG_PRINT = false
constexpr

◆ SPP_SANITY_CHECK

constexpr bool spp::SPP_SANITY_CHECK = true
constexpr

◆ ST_SET

constexpr std::size_t spp::ST_SET = 1
constexpr

◆ ST_TAG_BIT

constexpr unsigned spp::ST_TAG_BIT = 16
constexpr

◆ ST_TAG_MASK

constexpr uint32_t spp::ST_TAG_MASK = ((1 << ST_TAG_BIT) - 1)
constexpr

◆ ST_WAY

constexpr std::size_t spp::ST_WAY = 256
constexpr