diff options
author | Michalis Spyrou <michalis.spyrou@arm.com> | 2021-06-07 14:23:57 +0100 |
---|---|---|
committer | Georgios Pinitas <georgios.pinitas@arm.com> | 2021-06-23 12:25:50 +0000 |
commit | 20fca524baf99402f742ce38c538f2fd07d5fff9 (patch) | |
tree | b63d98383d1ba22bb3ca59d393e4ab9d47a9c762 /src/runtime | |
parent | 1d359279e22874121def2ce4bfdb633d94ea5ade (diff) | |
download | ComputeLibrary-20fca524baf99402f742ce38c538f2fd07d5fff9.tar.gz |
Create core library using high priority operators
A smaller core library is created using a subset of the operators.
Changed the structure of filelist.json in order to include more
information about the kernels and make the selection easier.
Resolves: COMPMID-4514
Change-Id: I079ca7d8e64346174eebdd13b834e1dd4dc36ca2
Signed-off-by: Michalis Spyrou <michalis.spyrou@arm.com>
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/5786
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/runtime')
-rw-r--r-- | src/runtime/CPP/CPPScheduler.cpp | 2 | ||||
-rw-r--r-- | src/runtime/CPP/SingleThreadScheduler.cpp | 6 | ||||
-rw-r--r-- | src/runtime/IScheduler.cpp | 5 | ||||
-rw-r--r-- | src/runtime/NEON/functions/NEFFT2D.cpp | 5 | ||||
-rw-r--r-- | src/runtime/OMP/OMPScheduler.cpp | 4 |
5 files changed, 9 insertions, 13 deletions
diff --git a/src/runtime/CPP/CPPScheduler.cpp b/src/runtime/CPP/CPPScheduler.cpp index f112d456c7..3d7f1f16b1 100644 --- a/src/runtime/CPP/CPPScheduler.cpp +++ b/src/runtime/CPP/CPPScheduler.cpp @@ -493,7 +493,7 @@ void CPPScheduler::run_workloads(std::vector<IScheduler::Workload> &workloads) } ThreadFeeder feeder(num_threads_to_use, workloads.size()); ThreadInfo info; - info.cpu_info = &_cpu_info; + info.cpu_info = &cpu_info(); info.num_threads = num_threads_to_use; unsigned int t = 0; auto thread_it = _impl->_threads.begin(); diff --git a/src/runtime/CPP/SingleThreadScheduler.cpp b/src/runtime/CPP/SingleThreadScheduler.cpp index 70536b7ccc..5890553f6f 100644 --- a/src/runtime/CPP/SingleThreadScheduler.cpp +++ b/src/runtime/CPP/SingleThreadScheduler.cpp @@ -49,7 +49,7 @@ void SingleThreadScheduler::schedule(ICPPKernel *kernel, const Hints &hints) } ThreadInfo info; - info.cpu_info = &_cpu_info; + info.cpu_info = &cpu_info(); kernel->run(kernel->window(), info); } @@ -57,14 +57,14 @@ void SingleThreadScheduler::schedule_op(ICPPKernel *kernel, const Hints &hints, { ARM_COMPUTE_UNUSED(hints); ThreadInfo info; - info.cpu_info = &_cpu_info; + info.cpu_info = &cpu_info(); kernel->run_op(tensors, window, info); } void SingleThreadScheduler::run_workloads(std::vector<Workload> &workloads) { ThreadInfo info; - info.cpu_info = &_cpu_info; + info.cpu_info = &cpu_info(); for(auto &wl : workloads) { wl(info); diff --git a/src/runtime/IScheduler.cpp b/src/runtime/IScheduler.cpp index df04fed401..004b8a46b6 100644 --- a/src/runtime/IScheduler.cpp +++ b/src/runtime/IScheduler.cpp @@ -32,7 +32,6 @@ namespace arm_compute { IScheduler::IScheduler() - : _cpu_info() { // Work out the best possible number of execution threads _num_threads_hint = cpuinfo::num_threads_hint(); @@ -40,7 +39,7 @@ IScheduler::IScheduler() CPUInfo &IScheduler::cpu_info() { - return _cpu_info; + return CPUInfo::get(); } void IScheduler::set_num_threads_with_affinity(unsigned int num_threads, BindFunc func) @@ -111,7 +110,7 @@ void IScheduler::schedule_common(ICPPKernel *kernel, const Hints &hints, const W if(!kernel->is_parallelisable() || num_threads == 1) { ThreadInfo info; - info.cpu_info = &_cpu_info; + info.cpu_info = &cpu_info(); if(tensors.empty()) { kernel->run(max_window, info); diff --git a/src/runtime/NEON/functions/NEFFT2D.cpp b/src/runtime/NEON/functions/NEFFT2D.cpp index 3b787cd523..5aaf587cdf 100644 --- a/src/runtime/NEON/functions/NEFFT2D.cpp +++ b/src/runtime/NEON/functions/NEFFT2D.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019-2020 Arm Limited. + * Copyright (c) 2019-2021 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -26,9 +26,6 @@ #include "arm_compute/core/ITensor.h" #include "arm_compute/core/Validate.h" #include "arm_compute/runtime/Scheduler.h" -#include "src/core/NEON/kernels/NEFFTDigitReverseKernel.h" -#include "src/core/NEON/kernels/NEFFTRadixStageKernel.h" -#include "src/core/NEON/kernels/NEFFTScaleKernel.h" namespace arm_compute { diff --git a/src/runtime/OMP/OMPScheduler.cpp b/src/runtime/OMP/OMPScheduler.cpp index ca763f907b..e9b0bf4426 100644 --- a/src/runtime/OMP/OMPScheduler.cpp +++ b/src/runtime/OMP/OMPScheduler.cpp @@ -66,7 +66,7 @@ void OMPScheduler::schedule_op(ICPPKernel *kernel, const Hints &hints, const Win if(!kernel->is_parallelisable() || num_threads == 1) { ThreadInfo info; - info.cpu_info = &_cpu_info; + info.cpu_info = &cpu_info(); kernel->run_op(tensors, max_window, info); } else @@ -96,7 +96,7 @@ void OMPScheduler::run_workloads(std::vector<arm_compute::IScheduler::Workload> } ThreadInfo info; - info.cpu_info = &_cpu_info; + info.cpu_info = &cpu_info(); info.num_threads = num_threads; #pragma omp parallel firstprivate(info) num_threads(num_threads) { |