aboutsummaryrefslogtreecommitdiff
path: root/src/core/CL/CLHelpers.cpp
diff options
context:
space:
mode:
authorVidhya Sudhan Loganathan <vidhyasudhan.loganathan@arm.com>2018-12-18 14:17:00 +0000
committerGeorgios Pinitas <georgios.pinitas@arm.com>2018-12-18 17:40:19 +0000
commit5e96be7707a571b136dc64256af399dbbb0fdfe0 (patch)
tree92229d9824f3089814ed2af56c5f76a474366954 /src/core/CL/CLHelpers.cpp
parent52ebf4219385efe54463dc794ba806b82a6137b3 (diff)
downloadComputeLibrary-5e96be7707a571b136dc64256af399dbbb0fdfe0.tar.gz
COMPMID-1722 : CL: Implement Range
Change-Id: I88da6eb5289c303b1dc91606c1560ce629746058 Reviewed-on: https://review.mlplatform.org/381 Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
Diffstat (limited to 'src/core/CL/CLHelpers.cpp')
-rw-r--r--src/core/CL/CLHelpers.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/core/CL/CLHelpers.cpp b/src/core/CL/CLHelpers.cpp
index 0947d58973..924fb1d322 100644
--- a/src/core/CL/CLHelpers.cpp
+++ b/src/core/CL/CLHelpers.cpp
@@ -230,4 +230,30 @@ bool cl_winograd_convolution_layer_supported(const Size2D &output_tile, const Si
return (std::find(winograd_configs_nhwc.begin(), winograd_configs_nhwc.end(), p) != winograd_configs_nhwc.end());
}
}
+
+size_t preferred_vector_width(const cl::Device &device, const DataType dt)
+{
+ switch(dt)
+ {
+ case DataType::U8:
+ case DataType::S8:
+ case DataType::QASYMM8:
+ return device.getInfo<CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR>();
+ case DataType::U16:
+ case DataType::S16:
+ return device.getInfo<CL_DEVICE_PREFERRED_VECTOR_WIDTH_SHORT>();
+ case DataType::U32:
+ case DataType::S32:
+ return device.getInfo<CL_DEVICE_PREFERRED_VECTOR_WIDTH_INT>();
+ case DataType::F16:
+ case DataType::F32:
+ return device.getInfo<CL_DEVICE_PREFERRED_VECTOR_WIDTH_FLOAT>();
+ case DataType::U64:
+ case DataType::S64:
+ return device.getInfo<CL_DEVICE_PREFERRED_VECTOR_WIDTH_LONG>();
+ default:
+ return 1;
+ }
+}
+
} // namespace arm_compute