45 if(num_iterations < 1)
61 kernel->
run_op(tensors, window, info);
64 void SingleThreadScheduler::run_workloads(std::vector<Workload> &workloads)
68 for(
auto &wl : workloads)
const Window & window() const
The maximum window the kernel can be executed on.
Common interface for all kernels implemented in C++.
unsigned int num_threads() const override
Returns the number of threads that the SingleThreadScheduler has, which is always 1...
static constexpr unsigned int split_dimensions_all
When arm_compute::ISchedular::Hints::_split_dimension is initialized with this value then the schedul...
#define ARM_COMPUTE_ERROR_ON(cond)
If the condition is true then an error message is printed and an exception thrown.
virtual void run_op(ITensorPack &tensors, const Window &window, const ThreadInfo &info)
Execute the kernel on the passed window.
constexpr size_t num_iterations(size_t dimension) const
Return the number of iterations needed to iterate through a given dimension.
Copyright (c) 2017-2021 Arm Limited.
void schedule_op(ICPPKernel *kernel, const Hints &hints, const Window &window, ITensorPack &tensors) override
Runs the kernel in the same thread as the caller synchronously.
void schedule(ICPPKernel *kernel, const Hints &hints) override
Runs the kernel in the same thread as the caller synchronously.
#define ARM_COMPUTE_UNUSED(...)
To avoid unused variables warnings.
virtual void run(const Window &window, const ThreadInfo &info)
Execute the kernel on the passed window.
void set_num_threads(unsigned int num_threads) override
Sets the number of threads the scheduler will use to run the kernels.
ScaleKernelInfo info(interpolation_policy, default_border_mode, PixelValue(), sampling_policy, false)
Information about executing thread and CPU.
unsigned int split_dimension() const
Return the prefered split dimension.
Describe a multidimensional execution window.