aboutsummaryrefslogtreecommitdiff
path: root/arm_compute/runtime/SingleThreadScheduler.h
diff options
context:
space:
mode:
authorGeorgios Pinitas <georgios.pinitas@arm.com>2019-07-25 13:31:10 +0100
committerGeorgios Pinitas <georgios.pinitas@arm.com>2019-09-09 11:22:01 +0000
commit12833d063259cb7809a97a4262f821efdc40554f (patch)
tree455333091c9eeba97079a385e0186f56076f5169 /arm_compute/runtime/SingleThreadScheduler.h
parented0e35bfe15bad01387504afc15b8553e585bdb9 (diff)
downloadComputeLibrary-12833d063259cb7809a97a4262f821efdc40554f.tar.gz
COMPMID-2204: RuntimeContext interface for NEON functions.
This patch creates the interfaces for the runtime context for NEON. Only the Neon backend implements the context which currently only holds an instance of the scheduler. The NEActivationLayer function has been updated to use the new context interface and the corresponding validation tests ported. Change-Id: I32e7e6aa888796dcbbfc5039b1e7f784a24f47da Signed-off-by: Pablo Tello <pablo.tello@arm.com> Reviewed-on: https://review.mlplatform.org/c/1851 Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Michele Di Giorgio <michele.digiorgio@arm.com>
Diffstat (limited to 'arm_compute/runtime/SingleThreadScheduler.h')
-rw-r--r--arm_compute/runtime/SingleThreadScheduler.h17
1 files changed, 5 insertions, 12 deletions
diff --git a/arm_compute/runtime/SingleThreadScheduler.h b/arm_compute/runtime/SingleThreadScheduler.h
index 7c084efeaf..9ea0f0818e 100644
--- a/arm_compute/runtime/SingleThreadScheduler.h
+++ b/arm_compute/runtime/SingleThreadScheduler.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017-2018 ARM Limited.
+ * Copyright (c) 2017-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -29,9 +29,11 @@
namespace arm_compute
{
/** Pool of threads to automatically split a kernel's execution among several threads. */
-class SingleThreadScheduler : public IScheduler
+class SingleThreadScheduler final : public IScheduler
{
public:
+ /** Constructor. */
+ SingleThreadScheduler() = default;
/** Sets the number of threads the scheduler will use to run the kernels.
*
* @param[in] num_threads This is ignored for this scheduler as the number of threads is always one.
@@ -42,11 +44,6 @@ public:
* @return Number of threads available in SingleThreadScheduler.
*/
unsigned int num_threads() const override;
- /** Access the scheduler singleton
- *
- * @return The scheduler
- */
- static SingleThreadScheduler &get();
/** Runs the kernel in the same thread as the caller synchronously.
*
* @param[in] kernel Kernel to execute.
@@ -60,10 +57,6 @@ protected:
* @param[in] workloads Workloads to run
*/
void run_workloads(std::vector<Workload> &workloads) override;
-
-private:
- /** Constructor. */
- SingleThreadScheduler() = default;
};
-}
+} // namespace arm_compute
#endif /* __ARM_COMPUTE_SINGLETHREADSCHEDULER_H__ */