summaryrefslogtreecommitdiff
path: root/src/gpu-compute/compute_unit.hh
diff options
context:
space:
mode:
authorAlexandru Dutu <alexandru.dutu@amd.com>2016-10-04 13:03:52 -0400
committerAlexandru Dutu <alexandru.dutu@amd.com>2016-10-04 13:03:52 -0400
commitc8cf71f1a046b4758e20d6398a654777c3fb5193 (patch)
treecd1d32884dbedee58802d73b87a3185422ead4f4 /src/gpu-compute/compute_unit.hh
parentb4b50f823029920542c3bb22f6aae38867b9f674 (diff)
downloadgem5-c8cf71f1a046b4758e20d6398a654777c3fb5193.tar.xz
gpu-compute: Added method to compute the actual workgroup size
This patch adds a method to the Wavefront class to compute the actual workgroup size. This can be different from the maximum workgroup size specified when launching the kernel through the NDRange object. Current solution is still not optimal, as we are computing these for each wavefront and the dispatcher also needs to have this information and can't actually call Wavefront::computeActuallWgSz before the wavefronts are being created. A long term solution would be to have a Workgroup class that deals with all these details.
Diffstat (limited to 'src/gpu-compute/compute_unit.hh')
-rw-r--r--src/gpu-compute/compute_unit.hh6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/gpu-compute/compute_unit.hh b/src/gpu-compute/compute_unit.hh
index 34b710cd6..a3547402a 100644
--- a/src/gpu-compute/compute_unit.hh
+++ b/src/gpu-compute/compute_unit.hh
@@ -254,10 +254,10 @@ class ComputeUnit : public MemObject
void exec();
void initiateFetch(Wavefront *wavefront);
void fetch(PacketPtr pkt, Wavefront *wavefront);
- void FillKernelState(Wavefront *w, NDRange *ndr);
+ void fillKernelState(Wavefront *w, NDRange *ndr);
- void StartWF(Wavefront *w, int trueWgSize[], int trueWgSizeTotal,
- int cnt, LdsChunk *ldsChunk, NDRange *ndr);
+ void startWavefront(Wavefront *w, int waveId, LdsChunk *ldsChunk,
+ NDRange *ndr);
void StartWorkgroup(NDRange *ndr);
int ReadyWorkgroup(NDRange *ndr);