diff options
author | Georgios Pinitas <georgios.pinitas@arm.com> | 2019-11-05 13:35:47 +0000 |
---|---|---|
committer | Georgios Pinitas <georgios.pinitas@arm.com> | 2019-11-11 12:33:13 +0000 |
commit | 77d42528b796f3b8f5033785d3bbb8d9cb3fc637 (patch) | |
tree | 9e8055e63f8475c5dde7d03768307e3eb7580a8a /arm_compute/runtime/IScheduler.h | |
parent | 9aaf09ec557dcce63cd1b5de173ce8947108327d (diff) | |
download | ComputeLibrary-77d42528b796f3b8f5033785d3bbb8d9cb3fc637.tar.gz |
COMPMID-2853: VGG16 regression for fp32
* Caps dynamic scheduling granule to a max number
Change-Id: I35a9239bc9984dbc1b416c40c4c1b4ac7f5808bd
Signed-off-by: Georgios Pinitas <georgios.pinitas@arm.com>
Reviewed-on: https://review.mlplatform.org/c/2223
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/IScheduler.h')
-rw-r--r-- | arm_compute/runtime/IScheduler.h | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/arm_compute/runtime/IScheduler.h b/arm_compute/runtime/IScheduler.h index 14acf04439..1c3e3e7abb 100644 --- a/arm_compute/runtime/IScheduler.h +++ b/arm_compute/runtime/IScheduler.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2018 ARM Limited. + * Copyright (c) 2017-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -53,9 +53,10 @@ public: * * @param[in] split_dimension Dimension along which to split the kernel's execution window. * @param[in] strategy (Optional) Split strategy. + * @param[in] threshold (Optional) Dynamic scheduling capping threshold. */ - Hints(unsigned int split_dimension, StrategyHint strategy = StrategyHint::STATIC) - : _split_dimension(split_dimension), _strategy(strategy) + Hints(unsigned int split_dimension, StrategyHint strategy = StrategyHint::STATIC, int threshold = 0) + : _split_dimension(split_dimension), _strategy(strategy), _threshold(threshold) { } /** Set the split_dimension hint @@ -97,10 +98,19 @@ public: { return _strategy; } + /** Return the granule capping threshold to be used by dynamic scheduling. + * + * @return The capping threshold + */ + int threshold() const + { + return _threshold; + } private: unsigned int _split_dimension; StrategyHint _strategy; + int _threshold; }; /** Signature for the workloads to execute */ using Workload = std::function<void(const ThreadInfo &)>; @@ -165,5 +175,5 @@ protected: private: unsigned int _num_threads_hint = {}; }; -} +} // namespace arm_compute #endif /* __ARM_COMPUTE_ISCHEDULER_H__ */ |