ChampSim
CACHE::module_model< P_FLAG, R_FLAG > Struct Template Referencefinal

#include <cache.h>

Inheritance diagram for CACHE::module_model< P_FLAG, R_FLAG >:
[legend]
Collaboration diagram for CACHE::module_model< P_FLAG, R_FLAG >:
[legend]

Public Member Functions

 module_model (CACHE *cache)
 
void impl_prefetcher_initialize ()
 
uint32_t impl_prefetcher_cache_operate (uint64_t addr, uint64_t ip, uint8_t cache_hit, bool useful_prefetch, uint8_t type, uint32_t metadata_in)
 
uint32_t impl_prefetcher_cache_fill (uint64_t addr, uint32_t set, uint32_t way, uint8_t prefetch, uint64_t evicted_addr, uint32_t metadata_in)
 
void impl_prefetcher_cycle_operate ()
 
void impl_prefetcher_final_stats ()
 
void impl_prefetcher_branch_operate (uint64_t ip, uint8_t branch_type, uint64_t branch_target)
 
void impl_initialize_replacement ()
 
uint32_t impl_find_victim (uint32_t triggering_cpu, uint64_t instr_id, uint32_t set, const BLOCK *current_set, uint64_t ip, uint64_t full_addr, uint32_t type)
 
void impl_update_replacement_state (uint32_t triggering_cpu, uint32_t set, uint32_t way, uint64_t full_addr, uint64_t ip, uint64_t victim_addr, uint32_t type, uint8_t hit)
 
void impl_replacement_final_stats ()
 
- Public Member Functions inherited from CACHE::module_concept
virtual ~module_concept ()=default
 

Public Attributes

CACHEintern_
 

Constructor & Destructor Documentation

◆ module_model()

template<unsigned long long P_FLAG, unsigned long long R_FLAG>
CACHE::module_model< P_FLAG, R_FLAG >::module_model ( CACHE cache)
inlineexplicit

Member Function Documentation

◆ impl_find_victim()

template<unsigned long long P_FLAG, unsigned long long R_FLAG>
uint32_t CACHE::module_model< P_FLAG, R_FLAG >::impl_find_victim ( uint32_t  triggering_cpu,
uint64_t  instr_id,
uint32_t  set,
const BLOCK current_set,
uint64_t  ip,
uint64_t  full_addr,
uint32_t  type 
)
virtual

Implements CACHE::module_concept.

◆ impl_initialize_replacement()

template<unsigned long long P_FLAG, unsigned long long R_FLAG>
void CACHE::module_model< P_FLAG, R_FLAG >::impl_initialize_replacement ( )
virtual

Implements CACHE::module_concept.

◆ impl_prefetcher_branch_operate()

template<unsigned long long P_FLAG, unsigned long long R_FLAG>
void CACHE::module_model< P_FLAG, R_FLAG >::impl_prefetcher_branch_operate ( uint64_t  ip,
uint8_t  branch_type,
uint64_t  branch_target 
)
virtual

Implements CACHE::module_concept.

◆ impl_prefetcher_cache_fill()

template<unsigned long long P_FLAG, unsigned long long R_FLAG>
uint32_t CACHE::module_model< P_FLAG, R_FLAG >::impl_prefetcher_cache_fill ( uint64_t  addr,
uint32_t  set,
uint32_t  way,
uint8_t  prefetch,
uint64_t  evicted_addr,
uint32_t  metadata_in 
)
virtual

Implements CACHE::module_concept.

◆ impl_prefetcher_cache_operate()

template<unsigned long long P_FLAG, unsigned long long R_FLAG>
uint32_t CACHE::module_model< P_FLAG, R_FLAG >::impl_prefetcher_cache_operate ( uint64_t  addr,
uint64_t  ip,
uint8_t  cache_hit,
bool  useful_prefetch,
uint8_t  type,
uint32_t  metadata_in 
)
virtual

Implements CACHE::module_concept.

◆ impl_prefetcher_cycle_operate()

template<unsigned long long P_FLAG, unsigned long long R_FLAG>
void CACHE::module_model< P_FLAG, R_FLAG >::impl_prefetcher_cycle_operate ( )
virtual

Implements CACHE::module_concept.

◆ impl_prefetcher_final_stats()

template<unsigned long long P_FLAG, unsigned long long R_FLAG>
void CACHE::module_model< P_FLAG, R_FLAG >::impl_prefetcher_final_stats ( )
virtual

Implements CACHE::module_concept.

◆ impl_prefetcher_initialize()

template<unsigned long long P_FLAG, unsigned long long R_FLAG>
void CACHE::module_model< P_FLAG, R_FLAG >::impl_prefetcher_initialize ( )
virtual

Implements CACHE::module_concept.

◆ impl_replacement_final_stats()

template<unsigned long long P_FLAG, unsigned long long R_FLAG>
void CACHE::module_model< P_FLAG, R_FLAG >::impl_replacement_final_stats ( )
virtual

Implements CACHE::module_concept.

◆ impl_update_replacement_state()

template<unsigned long long P_FLAG, unsigned long long R_FLAG>
void CACHE::module_model< P_FLAG, R_FLAG >::impl_update_replacement_state ( uint32_t  triggering_cpu,
uint32_t  set,
uint32_t  way,
uint64_t  full_addr,
uint64_t  ip,
uint64_t  victim_addr,
uint32_t  type,
uint8_t  hit 
)
virtual

Implements CACHE::module_concept.

Member Data Documentation

◆ intern_

template<unsigned long long P_FLAG, unsigned long long R_FLAG>
CACHE* CACHE::module_model< P_FLAG, R_FLAG >::intern_

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