| 87 | } |
| 88 | |
| 89 | void CpuScatter::run(ITensorPack &tensors) |
| 90 | { |
| 91 | ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuScatter::run"); |
| 92 | auto src = tensors.get_const_tensor(ACL_SRC_0); |
| 93 | auto dst = tensors.get_tensor(ACL_DST); |
| 94 | |
| 95 | if (_fill_zero) |
| 96 | { |
| 97 | // Fill destination tensor with 0 values if zero init. |
| 98 | ITensorPack fill_pack{{ACL_SRC, dst}}; |
| 99 | _fill_operator->run(fill_pack); |
| 100 | } |
| 101 | |
| 102 | if (_run_copy) |
| 103 | { |
| 104 | // copy src to dst before scatter op. |
| 105 | ITensorPack copy_pack{{ACL_SRC, src}, {ACL_DST, dst}}; |
| 106 | _copy_operator->run(copy_pack); |
| 107 | } |
| 108 | NEScheduler::get().schedule_op(_kernel.get(), Window::DimY, _kernel->window(), tensors); |
| 109 | } |
| 110 | } // namespace cpu |
| 111 | } // namespace arm_compute |
nothing calls this directly
no test coverage detected