diff options
Diffstat (limited to 'arm_compute')
-rw-r--r-- | arm_compute/core/Utils.h | 9 | ||||
-rw-r--r-- | arm_compute/runtime/CL/functions/CLCast.h | 33 |
2 files changed, 15 insertions, 27 deletions
diff --git a/arm_compute/core/Utils.h b/arm_compute/core/Utils.h index 188ae8cf5b..6fa983d24e 100644 --- a/arm_compute/core/Utils.h +++ b/arm_compute/core/Utils.h @@ -164,6 +164,9 @@ inline size_t element_size_from_data_type(DataType dt) case DataType::S32: case DataType::F32: return 4; + case DataType::U64: + case DataType::S64: + return 8; default: ARM_COMPUTE_ERROR("Undefined element size for given data type"); return 0; @@ -712,7 +715,7 @@ QuantizationInfo get_softmax_output_quantization_info(DataType input_type, bool * * @return The pair with minimum and maximum values */ -std::pair<int32_t, int32_t> get_quantized_activation_min_max(const ActivationLayerInfo& act_info, DataType data_type, UniformQuantizationInfo oq_info); +std::pair<int32_t, int32_t> get_quantized_activation_min_max(const ActivationLayerInfo &act_info, DataType data_type, UniformQuantizationInfo oq_info); /** Convert a tensor format into a string. * @@ -749,7 +752,7 @@ const std::string &string_from_data_type(DataType dt); * * @return The string describing the activation function. */ -const std::string &string_from_activation_func(const ActivationFunction& act); +const std::string &string_from_activation_func(const ActivationFunction &act); /** Translates a given interpolation policy to a string. * * @param[in] policy @ref InterpolationPolicy to be translated to string. @@ -798,7 +801,7 @@ bool is_pool_3d_region_entirely_outside_input(const Pooling3dLayerInfo &info); * * @return True if padding is symmetric */ -inline bool is_symmetric(const Padding3D& info) +inline bool is_symmetric(const Padding3D &info) { return ((info.left == info.right) && (info.top == info.bottom) && (info.front == info.back)); } diff --git a/arm_compute/runtime/CL/functions/CLCast.h b/arm_compute/runtime/CL/functions/CLCast.h index d2cea7a8a2..650cd11b9b 100644 --- a/arm_compute/runtime/CL/functions/CLCast.h +++ b/arm_compute/runtime/CL/functions/CLCast.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018-2021 Arm Limited. + * Copyright (c) 2018-2021, 2023 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -61,43 +61,28 @@ public: * |src |dst | * |:--------------|:--------------------------------------| * |U8 | S8, U16, S16, U32, S32, F16, F32 | + * |S8 | U8, U16, S16, U32, S32, F16, F32 | * |U16 | U8, S8, S16, U32, S32, F16, F32 | * |S16 | U8, S8, U16, U32, S32, F16, F32 | * |U32 | U8, S8, U16, S16, S32, F16, F32 | * |S32 | U8, S8, U16, S16, U32, F16, F32 | - * |F16 | U8, S8, U16, S16, U32, F32 | - * |F32 | U8, S8, U16, S16, U32, F16 | + * |U64 | U8, S8, U16, S16, U32, S32, F16, F32 | + * |S64 | U8, S8, U16, S16, U32, S32, F16, F32 | + * |F16 | U8, S8, U16, S16, S32, U32, F32 | + * |F32 | U8, S8, U16, S16, S32, U32, F16 | * * Input data type must be different than output data type. * - * @param[in] input The input tensor to convert. Data types supported: U8/S8/U16/S16/U32/S32/F16/F32. + * @param[in] input The input tensor to convert. Data types supported: U8/S8/U16/S16/U32/S32/U64/S64/F16/F32. * @param[out] output The output tensor. Data types supported: U8/S8/U16/S16/U32/S32/F16/F32. * @param[in] policy Conversion policy. */ void configure(const ICLTensor *input, ICLTensor *output, ConvertPolicy policy); - /** Initialize the function's source, destination - * - * Input data type must be different than output data type. - * - * Valid conversions Input -> Output : - * - * - U8 -> S8, U16, S16, U32, S32, F16, F32 - * - U16 -> U8, S8, S16, U32, S32, F16, F32 - * - S16 -> U8, S8, U16, U32, S32, F16, F32 - * - U32 -> U8, S8, U16, S16, S32, F16, F32 - * - S32 -> U8, S8, U16, S16, U32, F16, F32 - * - F16 -> U8, S8, U16, S16, U32, F32 - * - F32 -> U8, S8, U16, S16, U32, F16 - * - * @param[in] compile_context The compile context to be used. - * @param[in] input The input tensor to convert. Data types supported: U8/S8/U16/S16/U32/S32/F16/F32. - * @param[out] output The output tensor. Data types supported: U8/S8/U16/S16/U32/S32/F16/F32. - * @param[in] policy Conversion policy. - */ + // Initialize the function's source, destination void configure(const CLCompileContext &compile_context, const ICLTensor *input, ICLTensor *output, ConvertPolicy policy); /** Static function to check if given info will lead to a valid configuration of @ref CLCast * - * @param[in] input Source tensor info. Data types supported: U8/S8/U16/S16/U32/S32/F16/F32. + * @param[in] input Source tensor info. Data types supported: U8/S8/U16/S16/U32/S32/U64/S64/F16/F32. * @param[in] output Destination tensor info. Data type supported: U8/S8/U16/S16/U32/S32/F16/F32. * @param[in] policy Conversion policy. * |