gem5 [DEVELOP-FOR-25.0]
Loading...
Searching...
No Matches
gem5::SpatterKernel Class Reference

#include <utility_structs.hh>

Classes

class  IndexGen
 

Public Member Functions

 SpatterKernel (RequestorID requestor_id, uint32_t id, uint32_t delta, uint32_t count, SpatterKernelType type, uint32_t base_index, uint32_t indices_per_stride, uint32_t stride, size_t index_size, Addr base_index_addr, size_t value_size, Addr base_value_addr)
 
uint32_t id () const
 
void setIndices (const std::vector< uint32_t > &pattern)
 
SpatterKernelType type () const
 
bool done () const
 
SpatterAccessnextSpatterAccess ()
 

Private Types

typedef enums::SpatterKernelType SpatterKernelType
 
typedef SpatterAccess::AccessPair AccessPair
 

Private Attributes

RequestorID requestorId
 
IndexGen indexGen
 
uint32_t _id
 
uint32_t delta
 
uint32_t count
 
SpatterKernelType _type
 
size_t indexSize
 
Addr baseIndexAddr
 
size_t valueSize
 
Addr baseValueAddr
 
uint32_t iteration
 
uint32_t remRolls
 
std::deque< uint32_t > indices
 

Detailed Description

Definition at line 161 of file utility_structs.hh.

Member Typedef Documentation

◆ AccessPair

◆ SpatterKernelType

typedef enums::SpatterKernelType gem5::SpatterKernel::SpatterKernelType
private

Definition at line 164 of file utility_structs.hh.

Constructor & Destructor Documentation

◆ SpatterKernel()

gem5::SpatterKernel::SpatterKernel ( RequestorID requestor_id,
uint32_t id,
uint32_t delta,
uint32_t count,
SpatterKernelType type,
uint32_t base_index,
uint32_t indices_per_stride,
uint32_t stride,
size_t index_size,
Addr base_index_addr,
size_t value_size,
Addr base_value_addr )
inline

Member Function Documentation

◆ done()

bool gem5::SpatterKernel::done ( ) const
inline

Definition at line 247 of file utility_structs.hh.

References count, and iteration.

Referenced by gem5::SpatterGen::processNextGenEvent().

◆ id()

uint32_t gem5::SpatterKernel::id ( ) const
inline

Definition at line 237 of file utility_structs.hh.

References _id.

Referenced by gem5::SpatterGen::processNextGenEvent(), and SpatterKernel().

◆ nextSpatterAccess()

SpatterAccess * gem5::SpatterKernel::nextSpatterAccess ( )
inline

◆ setIndices()

void gem5::SpatterKernel::setIndices ( const std::vector< uint32_t > & pattern)
inline

Definition at line 239 of file utility_structs.hh.

References indices, and remRolls.

Referenced by gem5::SpatterGen::addKernel().

◆ type()

SpatterKernelType gem5::SpatterKernel::type ( ) const
inline

Definition at line 245 of file utility_structs.hh.

References _type.

Referenced by gem5::SpatterGen::processNextGenEvent(), and SpatterKernel().

Member Data Documentation

◆ _id

uint32_t gem5::SpatterKernel::_id
private

Definition at line 199 of file utility_structs.hh.

Referenced by id(), and SpatterKernel().

◆ _type

SpatterKernelType gem5::SpatterKernel::_type
private

Definition at line 203 of file utility_structs.hh.

Referenced by nextSpatterAccess(), SpatterKernel(), and type().

◆ baseIndexAddr

Addr gem5::SpatterKernel::baseIndexAddr
private

Definition at line 206 of file utility_structs.hh.

Referenced by nextSpatterAccess(), and SpatterKernel().

◆ baseValueAddr

Addr gem5::SpatterKernel::baseValueAddr
private

Definition at line 209 of file utility_structs.hh.

Referenced by nextSpatterAccess(), and SpatterKernel().

◆ count

uint32_t gem5::SpatterKernel::count
private

Definition at line 201 of file utility_structs.hh.

Referenced by done(), and SpatterKernel().

◆ delta

uint32_t gem5::SpatterKernel::delta
private

Definition at line 200 of file utility_structs.hh.

Referenced by nextSpatterAccess(), and SpatterKernel().

◆ indexGen

IndexGen gem5::SpatterKernel::indexGen
private

Definition at line 197 of file utility_structs.hh.

Referenced by nextSpatterAccess(), and SpatterKernel().

◆ indexSize

size_t gem5::SpatterKernel::indexSize
private

Definition at line 205 of file utility_structs.hh.

Referenced by nextSpatterAccess(), and SpatterKernel().

◆ indices

std::deque<uint32_t> gem5::SpatterKernel::indices
private

Definition at line 216 of file utility_structs.hh.

Referenced by nextSpatterAccess(), and setIndices().

◆ iteration

uint32_t gem5::SpatterKernel::iteration
private

Definition at line 212 of file utility_structs.hh.

Referenced by done(), nextSpatterAccess(), and SpatterKernel().

◆ remRolls

uint32_t gem5::SpatterKernel::remRolls
private

Definition at line 215 of file utility_structs.hh.

Referenced by nextSpatterAccess(), setIndices(), and SpatterKernel().

◆ requestorId

RequestorID gem5::SpatterKernel::requestorId
private

Definition at line 196 of file utility_structs.hh.

Referenced by nextSpatterAccess(), and SpatterKernel().

◆ valueSize

size_t gem5::SpatterKernel::valueSize
private

Definition at line 208 of file utility_structs.hh.

Referenced by nextSpatterAccess(), and SpatterKernel().


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

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