void GpuRule::generateCallCode(const std::string& name, Transform& trans, CodeGenerator& o, const SimpleRegionPtr& region, RuleFlavor flavor, bool, std::vector<RegionNodeGroup>& regionNodesGroups, int nodeID, int gpuCopyOut, SpatialCallType) { o.comment("from GpuRule::generateCallCode():"); switch(flavor) { case RuleFlavor::SEQUENTIAL: o.callSpatial(_rule->trampcodename(trans)+TX_OPENCL_POSTFIX, region); break; case RuleFlavor::WORKSTEALING: o.mkCreateGpuSpatialMethodCallTask(trans.name(), name, trans.instClassName() + "_workstealing", _rule->trampcodename(trans), region, regionNodesGroups, nodeID, gpuCopyOut, _rule->getToRegions(), _rule->isDivisible()); break; case RuleFlavor::DISTRIBUTED: o.comment("flavor distributed"); UNIMPLEMENTED(); break; default: UNIMPLEMENTED(); } }
void GpuRule::generateCallCodeSimple(Transform& /*trans*/, CodeGenerator& o, const SimpleRegionPtr& region) { o.comment( "GENERATECALLCODESIMPLE" ); o.callSpatial(codename(), region); }