Home | History | Annotate | Download | only in cpu_ref

Lines Matching full:mtls

470                                         MTLaunchStruct *mtls) {
472 memset(mtls, 0, sizeof(MTLaunchStruct));
485 mtls->fep.dimX = ain->getType()->getDimX();
486 mtls->fep.dimY = ain->getType()->getDimY();
487 mtls->fep.dimZ = ain->getType()->getDimZ();
488 //mtls->dimArray = ain->getType()->getDimArray();
490 mtls->fep.dimX = aout->getType()->getDimX();
491 mtls
492 mtls->fep.dimZ = aout->getType()->getDimZ();
493 //mtls->dimArray = aout->getType()->getDimArray();
500 mtls->xEnd = mtls->fep.dimX;
502 rsAssert(sc->xStart < mtls->fep.dimX);
503 rsAssert(sc->xEnd <= mtls->fep.dimX);
505 mtls->xStart = rsMin(mtls->fep.dimX, sc->xStart);
506 mtls->xEnd = rsMin(mtls->fep.dimX, sc->xEnd);
507 if (mtls->xStart >= mtls->xEnd) return;
511 mtls->yEnd = mtls->fep.dimY;
513 rsAssert(sc->yStart < mtls->fep.dimY);
514 rsAssert(sc->yEnd <= mtls->fep.dimY);
516 mtls->yStart = rsMin(mtls->fep.dimY, sc->yStart);
517 mtls->yEnd = rsMin(mtls->fep.dimY, sc->yEnd);
518 if (mtls->yStart >= mtls->yEnd) return;
522 mtls->zEnd = mtls->fep.dimZ;
524 rsAssert(sc->zStart < mtls->fep.dimZ);
525 rsAssert(sc->zEnd <= mtls->fep.dimZ);
527 mtls->zStart = rsMin(mtls->fep.dimZ, sc->zStart);
528 mtls->zEnd = rsMin(mtls->fep.dimZ, sc->zEnd);
529 if (mtls->zStart >= mtls->zEnd) return;
532 mtls->xEnd = rsMax((uint32_t)1, mtls->xEnd);
533 mtls->yEnd = rsMax((uint32_t)1, mtls->yEnd);
534 mtls->zEnd = rsMax((uint32_t)1, mtls->zEnd);
535 mtls->arrayEnd = rsMax((uint32_t)1, mtls->arrayEnd);
539 mtls->rsc = mCtx;
540 mtls->ain = ain;
541 mtls->aout = aout;
542 mtls->fep.usr = usr;
543 mtls->fep.usrLen = usrLen;
544 mtls->mSliceSize = 1;
545 mtls->mSliceNum = 0;
547 mtls->fep.ptrIn = NULL;
548 mtls->fep.eStrideIn = 0;
549 mtls->isThreadable = mIsThreadable;
552 mtls->fep.ptrIn = (const uint8_t *)ain->mHal.drvState.lod[0].mallocPtr;
553 mtls->fep.eStrideIn = ain->getType()->getElementSizeBytes();
554 mtls->fep.yStrideIn = ain->mHal.drvState.lod[0].stride;
557 mtls->fep.ptrOut = NULL;
558 mtls->fep.eStrideOut = 0;
560 mtls->fep.ptrOut = (uint8_t *)aout->mHal.drvState.lod[0].mallocPtr;
561 mtls->fep.eStrideOut = aout->getType()->getElementSizeBytes();
562 mtls->fep.yStrideOut = aout->mHal.drvState.lod[0].stride;
574 MTLaunchStruct mtls;
575 forEachMtlsSetup(ain, aout, usr, usrLen, sc, &mtls);
576 forEachKernelSetup(slot, &mtls);
579 mCtx->launchThreads(ain, aout, sc, &mtls);
583 void RsdCpuScriptImpl::forEachKernelSetup(uint32_t slot, MTLaunchStruct *mtls) {
584 mtls->script = this;
585 mtls->fep.slot = slot;
588 mtls->kernel = reinterpret_cast<ForEachFunc_t>(
590 rsAssert(mtls->kernel != NULL);
591 mtls->sig = mExecutable->getInfo().getExportForeachFuncs()[slot].second;
593 mtls->kernel = reinterpret_cast<ForEachFunc_t>(mForEachFunctions[slot]);
594 rsAssert(mtls->kernel != NULL);
595 mtls->sig = mForEachSignatures[slot];