32#ifndef __GPU_COMPUTE_COMM_HH__
33#define __GPU_COMPUTE_COMM_HH__
44struct ComputeUnitParams;
67 void reset()
override;
103 void reset()
override;
virtual void reset()=0
Reset the pipe stage interface.
Communication interface between Schedule and Execute stages.
ScheduleToExecute()=delete
DISPATCH_STATUS dispatchStatus(int func_unit_id) const
std::vector< GPUDynInstPtr > _readyInsts
void reset() override
Reset the pipe stage interface.
GPUDynInstPtr & readyInst(int func_unit_id)
void dispatchTransition(const GPUDynInstPtr &gpu_dyn_inst, int func_unit_id, DISPATCH_STATUS disp_status)
Once the scheduler has chosen a winning WF for execution, and after the WF's oldest instruction's ope...
std::vector< DISPATCH_STATUS > _dispatchStatus
Communication interface between ScoreboardCheck and Schedule stages.
int numReadyLists() const
Returns the number of ready lists (i.e., the number of functional units).
std::vector< Wavefront * > & readyWFs(int func_unit_id)
TODO: These methods expose this class' implementation too much by returning references to its interna...
void reset() override
Reset the pipe stage interface.
void markWFReady(Wavefront *wf, int func_unit_id)
Mark the WF as ready for execution on a particular functional unit.
void updateReadyList(int func_unit_id)
Delete all wavefronts that have been marked as ready at scoreboard stage but are found to have empty ...
std::vector< std::vector< Wavefront * > > _readyWFs
ScoreboardCheckToSchedule()=delete
Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.
std::shared_ptr< GPUDynInst > GPUDynInstPtr