| 230 | } |
| 231 | |
| 232 | void call_all_tasks(ExecutionWorkload &workload) |
| 233 | { |
| 234 | ARM_COMPUTE_ERROR_ON(workload.ctx == nullptr); |
| 235 | |
| 236 | // Acquire memory for the transition buffers |
| 237 | for (auto &mm_ctx : workload.ctx->memory_managers()) |
| 238 | { |
| 239 | if (mm_ctx.second.cross_group != nullptr) |
| 240 | { |
| 241 | mm_ctx.second.cross_group->acquire(); |
| 242 | } |
| 243 | } |
| 244 | |
| 245 | // Execute tasks |
| 246 | for (auto &task : workload.tasks) |
| 247 | { |
| 248 | task(); |
| 249 | } |
| 250 | |
| 251 | // Release memory for the transition buffers |
| 252 | for (auto &mm_ctx : workload.ctx->memory_managers()) |
| 253 | { |
| 254 | if (mm_ctx.second.cross_group != nullptr) |
| 255 | { |
| 256 | mm_ctx.second.cross_group->release(); |
| 257 | } |
| 258 | } |
| 259 | } |
| 260 | |
| 261 | bool call_all_output_node_accessors(ExecutionWorkload &workload) |
| 262 | { |
no test coverage detected