gem5  v22.1.0.0
Public Member Functions | Private Attributes | List of all members
gem5::ruby::UncoalescedTable Class Reference

#include <GPUCoalescer.hh>

Public Member Functions

 UncoalescedTable (GPUCoalescer *gc)
 
 ~UncoalescedTable ()
 
void insertPacket (PacketPtr pkt)
 
bool packetAvailable ()
 
void printRequestTable (std::stringstream &ss)
 
void initPacketsRemaining (InstSeqNum seqNum, int count)
 
int getPacketsRemaining (InstSeqNum seqNum)
 
void setPacketsRemaining (InstSeqNum seqNum, int count)
 
PerInstPacketsgetInstPackets (int offset)
 
void updateResources ()
 
bool areRequestsDone (const InstSeqNum instSeqNum)
 
void checkDeadlock (Tick threshold)
 

Private Attributes

GPUCoalescercoalescer
 
std::map< InstSeqNum, PerInstPacketsinstMap
 
std::map< InstSeqNum, int > instPktsRemaining
 

Detailed Description

Definition at line 67 of file GPUCoalescer.hh.

Constructor & Destructor Documentation

◆ UncoalescedTable()

gem5::ruby::UncoalescedTable::UncoalescedTable ( GPUCoalescer gc)

Definition at line 61 of file GPUCoalescer.cc.

◆ ~UncoalescedTable()

gem5::ruby::UncoalescedTable::~UncoalescedTable ( )
inline

Definition at line 71 of file GPUCoalescer.hh.

Member Function Documentation

◆ areRequestsDone()

bool gem5::ruby::UncoalescedTable::areRequestsDone ( const InstSeqNum  instSeqNum)

Definition at line 141 of file GPUCoalescer.cc.

References DPRINTF, and instMap.

Referenced by gem5::ruby::GPUCoalescer::writeCompleteCallback().

◆ checkDeadlock()

void gem5::ruby::UncoalescedTable::checkDeadlock ( Tick  threshold)

◆ getInstPackets()

PerInstPackets * gem5::ruby::UncoalescedTable::getInstPackets ( int  offset)

Definition at line 103 of file GPUCoalescer.cc.

References instMap, and gem5::ArmISA::offset.

Referenced by gem5::ruby::GPUCoalescer::completeIssue().

◆ getPacketsRemaining()

int gem5::ruby::UncoalescedTable::getPacketsRemaining ( InstSeqNum  seqNum)

Definition at line 91 of file GPUCoalescer.cc.

References instPktsRemaining.

Referenced by gem5::ruby::GPUCoalescer::completeIssue().

◆ initPacketsRemaining()

void gem5::ruby::UncoalescedTable::initPacketsRemaining ( InstSeqNum  seqNum,
int  count 
)

Definition at line 83 of file GPUCoalescer.cc.

References gem5::X86ISA::count, and instPktsRemaining.

Referenced by gem5::ruby::GPUCoalescer::makeRequest().

◆ insertPacket()

void gem5::ruby::UncoalescedTable::insertPacket ( PacketPtr  pkt)

◆ packetAvailable()

bool gem5::ruby::UncoalescedTable::packetAvailable ( )

Definition at line 77 of file GPUCoalescer.cc.

References instMap.

Referenced by gem5::ruby::GPUCoalescer::completeHitCallback().

◆ printRequestTable()

void gem5::ruby::UncoalescedTable::printRequestTable ( std::stringstream &  ss)

◆ setPacketsRemaining()

void gem5::ruby::UncoalescedTable::setPacketsRemaining ( InstSeqNum  seqNum,
int  count 
)

Definition at line 97 of file GPUCoalescer.cc.

References gem5::X86ISA::count, and instPktsRemaining.

Referenced by gem5::ruby::GPUCoalescer::completeIssue().

◆ updateResources()

void gem5::ruby::UncoalescedTable::updateResources ( )

Member Data Documentation

◆ coalescer

GPUCoalescer* gem5::ruby::UncoalescedTable::coalescer
private

Definition at line 95 of file GPUCoalescer.hh.

Referenced by checkDeadlock(), and updateResources().

◆ instMap

std::map<InstSeqNum, PerInstPackets> gem5::ruby::UncoalescedTable::instMap
private

◆ instPktsRemaining

std::map<InstSeqNum, int> gem5::ruby::UncoalescedTable::instPktsRemaining
private

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

Generated on Wed Dec 21 2022 10:24:23 for gem5 by doxygen 1.9.1