gem5  v21.1.0.2
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 69 of file GPUCoalescer.hh.

Constructor & Destructor Documentation

◆ UncoalescedTable()

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

Definition at line 63 of file GPUCoalescer.cc.

◆ ~UncoalescedTable()

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

Definition at line 73 of file GPUCoalescer.hh.

Member Function Documentation

◆ areRequestsDone()

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

Definition at line 143 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 105 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 93 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 85 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 79 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 99 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 97 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 Tue Sep 21 2021 12:32:10 for gem5 by doxygen 1.8.17