gem5
v20.1.0.0
|
#include <local_memory_pipeline.hh>
Public Member Functions | |
LocalMemPipeline (const ComputeUnitParams *p, ComputeUnit &cu) | |
void | exec () |
std::queue< GPUDynInstPtr > & | getLMRespFIFO () |
void | issueRequest (GPUDynInstPtr gpuDynInst) |
bool | isLMRespFIFOWrRdy () const |
bool | isLMReqFIFOWrRdy (uint32_t pendReqs=0) const |
const std::string & | name () const |
void | regStats () |
void | incLoadVRFBankConflictCycles (int num_cycles) |
Private Attributes | |
ComputeUnit & | computeUnit |
const std::string | _name |
int | lmQueueSize |
Stats::Scalar | loadVrfBankConflictCycles |
std::queue< GPUDynInstPtr > | lmIssuedRequests |
std::queue< GPUDynInstPtr > | lmReturnedRequests |
Definition at line 55 of file local_memory_pipeline.hh.
LocalMemPipeline::LocalMemPipeline | ( | const ComputeUnitParams * | p, |
ComputeUnit & | cu | ||
) |
Definition at line 44 of file local_memory_pipeline.cc.
void LocalMemPipeline::exec | ( | ) |
Definition at line 51 of file local_memory_pipeline.cc.
References Shader::coissue_return, computeUnit, DPRINTF, lmIssuedRequests, lmQueueSize, lmReturnedRequests, ComputeUnit::locMemToVrfBus, ArmISA::m, WaitClass::rdy(), Shader::ScheduleAdd(), ComputeUnit::sendToLds(), WaitClass::set(), ComputeUnit::shader, ComputeUnit::vectorSharedMemUnit, and MipsISA::w.
Referenced by ComputeUnit::exec().
|
inline |
Definition at line 60 of file local_memory_pipeline.hh.
References lmReturnedRequests.
|
inline |
Definition at line 81 of file local_memory_pipeline.hh.
References loadVrfBankConflictCycles.
|
inline |
Definition at line 72 of file local_memory_pipeline.hh.
References lmIssuedRequests, and lmQueueSize.
Referenced by ComputeUnit::isDone().
|
inline |
Definition at line 66 of file local_memory_pipeline.hh.
References lmQueueSize, and lmReturnedRequests.
Referenced by ComputeUnit::isDone().
void LocalMemPipeline::issueRequest | ( | GPUDynInstPtr | gpuDynInst | ) |
Definition at line 121 of file local_memory_pipeline.cc.
References curTick(), and lmIssuedRequests.
|
inline |
void LocalMemPipeline::regStats | ( | ) |
Definition at line 128 of file local_memory_pipeline.cc.
References Stats::DataWrap< Derived, InfoProxyType >::desc(), loadVrfBankConflictCycles, name(), and Stats::DataWrap< Derived, InfoProxyType >::name().
Referenced by ComputeUnit::regStats().
|
private |
Definition at line 88 of file local_memory_pipeline.hh.
Referenced by name().
|
private |
Definition at line 87 of file local_memory_pipeline.hh.
Referenced by exec().
|
private |
Definition at line 93 of file local_memory_pipeline.hh.
Referenced by exec(), isLMReqFIFOWrRdy(), and issueRequest().
|
private |
Definition at line 89 of file local_memory_pipeline.hh.
Referenced by exec(), isLMReqFIFOWrRdy(), and isLMRespFIFOWrRdy().
|
private |
Definition at line 97 of file local_memory_pipeline.hh.
Referenced by exec(), getLMRespFIFO(), and isLMRespFIFOWrRdy().
|
private |
Definition at line 90 of file local_memory_pipeline.hh.
Referenced by incLoadVRFBankConflictCycles(), and regStats().