Searched refs:Wavefront (Results 1 - 25 of 44) sorted by relevance

12

/gem5/src/gpu-compute/
H A Dscheduling_policy.hh42 class Wavefront;
51 virtual Wavefront *chooseWave(std::vector<Wavefront*> *sched_list) = 0;
68 Wavefront*
69 chooseWave(std::vector<Wavefront*> *sched_list) override
H A Dgpu_exec_context.hh44 class Wavefront;
49 GPUExecContext(ComputeUnit *_cu, Wavefront *_wf);
50 Wavefront* wavefront();
58 Wavefront *wf;
H A Dfetch_unit.hh52 class Wavefront;
61 void bindWaveList(std::vector<Wavefront*> *list);
62 void initiateFetch(Wavefront *wavefront);
63 void fetch(PacketPtr pkt, Wavefront *wavefront);
80 std::vector<Wavefront*> fetchQueue;
85 std::vector<std::pair<Wavefront*, bool>> fetchStatusQueue;
88 std::vector<Wavefront*> *waveList;
H A Drr_scheduling_policy.hh53 static Wavefront*
54 __chooseWave(std::vector<Wavefront*> *sched_list)
58 Wavefront *selected_wave(nullptr);
H A Dscheduler.hh50 Wavefront *chooseWave();
51 void bindList(std::vector<Wavefront*> *sched_list);
59 std::vector<Wavefront*> *scheduleList;
H A Dof_scheduling_policy.hh53 static Wavefront*
54 __chooseWave(std::vector<Wavefront*> *sched_list)
59 Wavefront *selected_wave(nullptr);
64 Wavefront *cur_wave = sched_list->at(position);
H A Dscheduler.cc54 Wavefront*
61 Scheduler::bindList(std::vector<Wavefront*> *sched_list)
H A Dschedule_stage.hh53 class Wavefront;
81 std::vector<std::vector<std::pair<Wavefront*, WAVE_STATUS>>*>
91 std::vector<std::pair<Wavefront*, DISPATCH_STATUS>> *dispatchList;
H A Dscoreboard_check_stage.hh46 class Wavefront;
77 void collectStatistics(Wavefront *curWave, int unitId);
95 std::vector<std::vector<Wavefront*>*> readyList;
100 std::vector<std::vector<std::pair<Wavefront*, WAVE_STATUS>>*>
H A Dvector_register_file.hh52 class Wavefront;
99 virtual void exec(GPUDynInstPtr ii, Wavefront *w);
101 virtual int exec(uint64_t dynamic_id, Wavefront *w,
105 bool operandsReady(Wavefront *w, GPUDynInstPtr ii) const;
107 virtual void updateResources(Wavefront *w, GPUDynInstPtr ii);
121 virtual bool vrfOperandAccessReady(uint64_t dynamic_id, Wavefront *w,
125 virtual bool vrfOperandAccessReady(Wavefront *w, GPUDynInstPtr ii,
H A Dfetch_stage.hh52 class Wavefront;
62 void fetch(PacketPtr pkt, Wavefront *wave);
H A Dgpu_exec_context.cc39 GPUExecContext::GPUExecContext(ComputeUnit *_cu, Wavefront *_wf)
50 Wavefront*
H A Dscoreboard_check_stage.cc97 ScoreboardCheckStage::collectStatistics(Wavefront *curWave, int unitId)
144 Wavefront *curWave = waveStatusList[unitId]->at(wvId).first;
147 if (curWave->ready(Wavefront::I_ALU)) {
150 } else if (curWave->ready(Wavefront::I_GLOBAL)) {
157 } else if (curWave->ready(Wavefront::I_SHARED)) {
160 } else if (curWave->ready(Wavefront::I_FLAT)) {
163 } else if (curWave->ready(Wavefront::I_PRIVATE)) {
H A Dwavefront.cc45 Wavefront*
48 return new Wavefront(this);
51 Wavefront::Wavefront(const Params *p) function in class:Wavefront
95 Wavefront::regStats()
135 Wavefront::init()
142 Wavefront::resizeRegFiles(int num_cregs, int num_sregs, int num_dregs)
149 Wavefront::~Wavefront()
157 Wavefront
[all...]
H A Dcondition_register_state.hh47 class Wavefront;
90 void exec(GPUDynInstPtr ii, Wavefront *w);
H A Dexec_stage.hh47 class Wavefront;
89 // Wavefront with such an instruction as the oldest
113 std::vector<std::pair<Wavefront*, DISPATCH_STATUS>> *dispatchList;
H A Dfetch_stage.cc82 Wavefront *wavefront = sender_state->wavefront;
93 FetchStage::fetch(PacketPtr pkt, Wavefront *wavefront)
H A Dfetch_unit.cc88 Wavefront *curWave = fetchStatusQueue[j].first;
95 if (curWave->status == Wavefront::S_RUNNING &&
108 Wavefront *waveToBeFetched = fetchScheduler.chooseWave();
116 FetchUnit::initiateFetch(Wavefront *wavefront)
208 FetchUnit::fetch(PacketPtr pkt, Wavefront *wavefront)
261 Wavefront *wavefront = sender_state->wavefront;
314 FetchUnit::bindWaveList(std::vector<Wavefront*> *wave_list)
H A Dschedule_stage.cc83 Wavefront *waveToMemPipe = dispatchList->at(j).first;
87 Wavefront *waveToExePipe = dispatchList->at(i).first;
134 Wavefront *waveToBeDispatched = scheduler[j].chooseWave();
H A Dcondition_register_state.cc65 ConditionRegisterState::exec(GPUDynInstPtr ii, Wavefront *w)
H A Dlocal_memory_pipeline.hh55 class Wavefront;
/gem5/src/arch/hsail/
H A Doperand.hh156 get(Wavefront *w, int lane)
190 getTarget(Wavefront *w, int lane)
196 void set(Wavefront *w, int lane, OperandType &val);
202 SRegOperand::set(Wavefront *w, int lane, OperandType &val)
215 SRegOperand::set(Wavefront *w, int lane, uint64_t &val)
261 get(Wavefront *w, int lane)
273 set(Wavefront *w, int lane, OperandType &val)
325 get(Wavefront *w, int lane)
334 set(Wavefront *w, int lane, OperandType &val)
361 get(Wavefront *
[all...]
/gem5/src/arch/hsail/insts/
H A Dpseudo_inst.cc80 Call::execPseudoInst(Wavefront *w, GPUDynInstPtr gpuDynInst)
181 Call::MagicPrintLane(Wavefront *w)
204 Call::MagicPrintLane64(Wavefront *w)
227 Call::MagicPrintWF32(Wavefront *w)
265 Call::MagicPrintWF32ID(Wavefront *w)
307 Call::MagicPrintWF64(Wavefront *w)
345 Call::MagicPrintWFID64(Wavefront *w)
387 Call::MagicPrintWFFloat(Wavefront *w)
421 Call::MagicSimBreak(Wavefront *w)
456 Call::MagicPrefixSum(Wavefront *
[all...]
H A Ddecl.hh1113 Wavefront *wave = gpuDynInst->wavefront();
1120 Wavefront *w = gpuDynInst->wavefront();
1155 void calcAddr(Wavefront* w, GPUDynInstPtr m);
1187 void execPseudoInst(Wavefront *w, GPUDynInstPtr gpuDynInst);
1190 void MagicPrintLane(Wavefront *w);
1191 void MagicPrintLane64(Wavefront *w);
1192 void MagicPrintWF32(Wavefront *w);
1193 void MagicPrintWF64(Wavefront *w);
1194 void MagicPrintWFFloat(Wavefront *w);
1195 void MagicSimBreak(Wavefront *
[all...]
H A Dmain.cc132 Wavefront *w = gpuDynInst->wavefront();
153 w->status = Wavefront::S_STOPPED;
187 w->status = Wavefront::S_RETURNING;
203 Wavefront *w = gpuDynInst->wavefront();

Completed in 33 milliseconds

12