aboutsummaryrefslogtreecommitdiff
path: root/arm_compute/runtime/CL/CLTunerTypes.h
diff options
context:
space:
mode:
Diffstat (limited to 'arm_compute/runtime/CL/CLTunerTypes.h')
-rw-r--r--arm_compute/runtime/CL/CLTunerTypes.h22
1 files changed, 15 insertions, 7 deletions
diff --git a/arm_compute/runtime/CL/CLTunerTypes.h b/arm_compute/runtime/CL/CLTunerTypes.h
index a3385b6d7c..d9b914676a 100644
--- a/arm_compute/runtime/CL/CLTunerTypes.h
+++ b/arm_compute/runtime/CL/CLTunerTypes.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2019 ARM Limited.
+ * Copyright (c) 2019-2021 Arm Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -39,6 +39,15 @@ enum class CLTunerMode
RAPID /**< Searches a minimal subset of LWS configurations while tuning */
};
+/**< OpenCL tuner tuning information */
+struct CLTuningInfo
+{
+ CLTunerMode tuner_mode = CLTunerMode::NORMAL; /**< Parameter to select the level (granularity) of the tuning */
+ bool tune_wbsm = false; /**< Flag to tune the batches of work groups distributed to compute units.
+ Internally, the library will check if this feature is available on
+ the target platform. This OpenCL tuner extension is still in experimental phase */
+};
+
/** Converts a string to a strong types enumeration @ref CLTunerMode
*
* @param[in] name String to convert
@@ -47,11 +56,10 @@ enum class CLTunerMode
*/
inline CLTunerMode tuner_mode_from_name(const std::string &name)
{
- static const std::map<std::string, CLTunerMode> tuner_modes =
- {
- { "exhaustive", CLTunerMode::EXHAUSTIVE },
- { "normal", CLTunerMode::NORMAL },
- { "rapid", CLTunerMode::RAPID },
+ static const std::map<std::string, CLTunerMode> tuner_modes = {
+ {"exhaustive", CLTunerMode::EXHAUSTIVE},
+ {"normal", CLTunerMode::NORMAL},
+ {"rapid", CLTunerMode::RAPID},
};
#ifndef ARM_COMPUTE_EXCEPTIONS_DISABLED
@@ -62,7 +70,7 @@ inline CLTunerMode tuner_mode_from_name(const std::string &name)
#ifndef ARM_COMPUTE_EXCEPTIONS_DISABLED
}
- catch(const std::out_of_range &)
+ catch (const std::out_of_range &)
{
throw std::invalid_argument(name);
}