Home | History | Annotate | Download | only in cpu_ref

Lines Matching full:mtls

795                                         MTLaunchStruct *mtls) {
797 memset(mtls, 0, sizeof(MTLaunchStruct));
812 mtls->fep.dimX = inType->getDimX();
813 mtls->fep.dimY = inType->getDimY();
814 mtls->fep.dimZ = inType->getDimZ();
819 mtls->fep.dimX = outType->getDimX();
820 mtls->fep.dimY = outType->getDimY();
821 mtls->fep.dimZ = outType->getDimZ();
838 mtls->xEnd = mtls->fep.dimX;
840 rsAssert(sc->xStart < mtls->fep.dimX);
841 rsAssert(sc->xEnd <= mtls->fep.dimX);
843 mtls->xStart = rsMin(mtls->fep.dimX, sc->xStart);
844 mtls->xEnd = rsMin(mtls->fep.dimX, sc->xEnd);
845 if (mtls->xStart >= mtls->xEnd) return;
849 mtls->yEnd = mtls->fep.dimY;
851 rsAssert(sc->yStart < mtls->fep.dimY);
852 rsAssert(sc->yEnd <= mtls->fep.dimY);
854 mtls->yStart = rsMin(mtls->fep.dimY, sc->yStart);
855 mtls->yEnd = rsMin(mtls->fep.dimY, sc->yEnd);
856 if (mtls->yStart >= mtls->yEnd) return;
860 mtls->zEnd = mtls->fep.dimZ;
862 rsAssert(sc->zStart < mtls->fep.dimZ);
863 rsAssert(sc->zEnd <= mtls->fep.dimZ);
865 mtls->zStart = rsMin(mtls->fep.dimZ, sc->zStart);
866 mtls->zEnd = rsMin(mtls->fep.dimZ, sc->zEnd);
867 if (mtls->zStart >= mtls->zEnd) return;
870 mtls->xEnd = rsMax((uint32_t)1, mtls->xEnd);
871 mtls->yEnd = rsMax((uint32_t)1, mtls->yEnd);
872 mtls->zEnd = rsMax((uint32_t)1, mtls->zEnd);
873 mtls->arrayEnd = rsMax((uint32_t)1, mtls->arrayEnd);
877 mtls->rsc = mCtx;
878 mtls->ain = ain;
879 mtls->aout = aout;
880 mtls->fep.usr = usr;
881 mtls->fep.usrLen = usrLen;
882 mtls->mSliceSize = 1;
883 mtls->mSliceNum = 0;
885 mtls->fep.ptrIn = NULL;
886 mtls->fep.eStrideIn = 0;
887 mtls->isThreadable = mIsThreadable;
890 mtls->fep.ptrIn = (const uint8_t *)ain->mHal.drvState.lod[0].mallocPtr;
891 mtls->fep.eStrideIn = ain->getType()->getElementSizeBytes();
892 mtls->fep.yStrideIn = ain->mHal.drvState.lod[0].stride;
895 mtls->fep.ptrOut = NULL;
896 mtls->fep.eStrideOut = 0;
898 mtls->fep.ptrOut = (uint8_t *)aout->mHal.drvState.lod[0].mallocPtr;
899 mtls->fep.eStrideOut = aout->getType()->getElementSizeBytes();
900 mtls->fep.yStrideOut = aout->mHal.drvState.lod[0].stride;
908 MTLaunchStruct *mtls) {
910 memset(mtls, 0, sizeof(MTLaunchStruct));
933 mtls->fep.dimX = inType->getDimX();
934 mtls->fep.dimY = inType->getDimY();
935 mtls->fep.dimZ = inType->getDimZ();
949 mtls->fep.dimX = outType->getDimX();
950 mtls->fep.dimY = outType->getDimY();
951 mtls->fep.dimZ = outType->getDimZ();
968 mtls->xEnd = mtls->fep.dimX;
970 mtls->fep.dimX);
971 rsAssert(sc->xEnd <= mtls->fep.dimX);
973 mtls->xStart = rsMin(mtls->fep.dimX, sc->xStart);
974 mtls->xEnd = rsMin(mtls->fep.dimX, sc->xEnd);
975 if (mtls->xStart >= mtls->xEnd) return;
979 mtls->yEnd = mtls->fep.dimY;
981 rsAssert(sc->yStart < mtls->fep.dimY);
982 rsAssert(sc->yEnd <= mtls->fep.dimY);
984 mtls->yStart = rsMin(mtls->fep.dimY, sc->yStart);
985 mtls->yEnd = rsMin(mtls->fep.dimY, sc->yEnd);
986 if (mtls->yStart >= mtls->yEnd) return;
990 mtls->zEnd = mtls->fep.dimZ;
992 rsAssert(sc->zStart < mtls->fep.dimZ);
993 rsAssert(sc->zEnd <= mtls->fep.dimZ);
995 mtls->zStart = rsMin(mtls->fep.dimZ, sc->zStart);
996 mtls->zEnd = rsMin(mtls->fep.dimZ, sc->zEnd);
997 if (mtls->zStart >= mtls->zEnd) return;
1000 mtls->xEnd = rsMax((uint32_t)1, mtls->xEnd);
1001 mtls->yEnd = rsMax((uint32_t)1, mtls->yEnd);
1002 mtls->zEnd = rsMax((uint32_t)1, mtls->zEnd);
1003 mtls->arrayEnd = rsMax((uint32_t)1, mtls->arrayEnd);
1007 mtls->rsc = mCtx;
1008 mtls->ains = ains;
1009 mtls->aout = aout;
1010 mtls->fep.usr = usr;
1011 mtls->fep.usrLen = usrLen;
1012 mtls->mSliceSize = 1;
1013 mtls->mSliceNum = 0;
1015 mtls->fep.ptrIns = NULL;
1016 mtls->fep.eStrideIn = 0;
1017 mtls->isThreadable = mIsThreadable;
1020 mtls->fep.ptrIns = new const uint8_t*[inLen];
1021 mtls->fep.inStrides = new StridePair[inLen];
1026 mtls->fep.ptrIns[index] =
1029 mtls->fep.inStrides[index].eStride =
1031 mtls->fep.inStrides[index].yStride =
1036 mtls->fep.ptrOut = NULL;
1037 mtls->fep.eStrideOut = 0;
1039 mtls->fep.ptrOut = (uint8_t *)aout->mHal.drvState.lod[0].mallocPtr;
1040 mtls->fep.eStrideOut = aout->getType()->getElementSizeBytes();
1041 mtls->fep.yStrideOut = aout->mHal.drvState.lod[0].stride;
1053 MTLaunchStruct mtls;
1054 forEachMtlsSetup(ain, aout, usr, usrLen, sc, &mtls);
1055 forEachKernelSetup(slot, &mtls);
1058 mCtx->launchThreads(ain, aout, sc, &mtls);
1070 MTLaunchStruct mtls;
1072 forEachMtlsSetup(ains, inLen, aout, usr, usrLen, sc, &mtls);
1073 forEachKernelSetup(slot, &mtls);
1076 mCtx->launchThreads(ains, inLen, aout, sc, &mtls);
1080 void RsdCpuScriptImpl::forEachKernelSetup(uint32_t slot, MTLaunchStruct *mtls) {
1081 mtls->script = this;
1082 mtls->fep.slot = slot;
1085 mtls->kernel = reinterpret_cast<ForEachFunc_t>(
1087 rsAssert(mtls->kernel != NULL);
1088 mtls->sig = mExecutable->getInfo().getExportForeachFuncs()[slot].second;
1090 mtls->kernel = reinterpret_cast<ForEachFunc_t>(mForEachFunctions[slot]);
1091 rsAssert(mtls->kernel != NULL);
1092 mtls->sig = mForEachSignatures[slot];