34 #ifndef __GPU_COMPUTE_OF_SCHEDULING_POLICY_HH__
35 #define __GPU_COMPUTE_OF_SCHEDULING_POLICY_HH__
56 panic_if(!sched_list->size(),
"OF scheduling policy sched list is "
60 int selected_wave_id = -1;
61 int selected_position = 0;
63 for (
int position = 0; position < sched_list->size(); ++position) {
64 Wavefront *cur_wave = sched_list->at(position);
65 int cur_wave_id = cur_wave->
wfDynId;
68 if (selected_wave_id == -1 || cur_wave_id < selected_wave_id) {
69 selected_wave_id = cur_wave_id;
70 selected_wave = cur_wave;
71 selected_position = position;
76 panic_if(!selected_wave,
"No wave found by OF scheduling policy.\n");
77 sched_list->erase(sched_list->begin() + selected_position);
85 #endif // __GPU_COMPUTE_OF_SCHEDULING_POLICY_HH__