Lines Matching defs:ndr

181 ComputeUnit::fillKernelState(Wavefront *w, NDRange *ndr)
183 w->resizeRegFiles(ndr->q.cRegCount, ndr->q.sRegCount, ndr->q.dRegCount);
185 w->workGroupSz[0] = ndr->q.wgSize[0];
186 w->workGroupSz[1] = ndr->q.wgSize[1];
187 w->workGroupSz[2] = ndr->q.wgSize[2];
189 w->gridSz[0] = ndr->q.gdSize[0];
190 w->gridSz[1] = ndr->q.gdSize[1];
191 w->gridSz[2] = ndr->q.gdSize[2];
192 w->kernelArgs = ndr->q.args;
193 w->privSizePerItem = ndr->q.privMemPerItem;
194 w->spillSizePerItem = ndr->q.spillMemPerItem;
195 w->roBase = ndr->q.roMemStart;
196 w->roSize = ndr->q.roMemTotal;
197 w->computeActualWgSz(ndr);
229 NDRange *ndr)
241 w->kernId = ndr->dispatchId;
265 w->privBase = ndr->q.privMemStart;
266 ndr->q.privMemStart += ndr->q.privMemPerItem * wfSize();
268 w->spillBase = ndr->q.spillMemStart;
269 ndr->q.spillMemStart += ndr->q.spillMemPerItem * wfSize();
274 w->wgId = ndr->globalWgId;
275 w->dispatchId = ndr->dispatchId;
276 w->workGroupId[0] = w->wgId % ndr->numWg[0];
277 w->workGroupId[1] = (w->wgId / ndr->numWg[0]) % ndr->numWg[1];
278 w->workGroupId[2] = w->wgId / (ndr->numWg[0] * ndr->numWg[1]);
308 w->start(++_n_wave, ndr->q.code_ptr);
312 ComputeUnit::StartWorkgroup(NDRange *ndr)
317 LdsChunk *ldsChunk = lds.reserveSpace(ndr->dispatchId, ndr->globalWgId,
318 ndr->q.ldsSize);
332 int vregDemand = ndr->q.sRegCount + (2 * ndr->q.dRegCount);
342 fillKernelState(w, ndr);
358 startWavefront(w, wave_id, ldsChunk, ndr);
366 ComputeUnit::ReadyWorkgroup(NDRange *ndr)
373 trueWgSize[d] = std::min(ndr->q.wgSize[d], ndr->q.gdSize[d] -
374 ndr->wgId[d] * ndr->q.wgSize[d]);
384 int vregDemandPerWI = ndr->q.sRegCount + (2 * ndr->q.dRegCount);
437 if (!lds.canReserve(ndr->q.ldsSize)) {
444 return freeWfSlots >= numWfs && vregAvail && lds.canReserve(ndr->q.ldsSize);