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)
 
PerInstPackets * getInstPackets (int offset)
 
void updateResources ()
 
bool areRequestsDone (const InstSeqNum instSeqNum)
 
void checkDeadlock (Tick threshold)
 

Private Attributes

GPUCoalescer * coalescer
 
std::map< InstSeqNum, PerInstPackets > instMap
 
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