diff options
Diffstat (limited to 'tests/AssetsLibrary.h')
-rw-r--r-- | tests/AssetsLibrary.h | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/tests/AssetsLibrary.h b/tests/AssetsLibrary.h index f465577372..bd97cb7bd4 100644 --- a/tests/AssetsLibrary.h +++ b/tests/AssetsLibrary.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2021 Arm Limited. + * Copyright (c) 2017-2022 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -406,6 +406,17 @@ public: template <typename T, typename DataType> void fill_static_values(T &&tensor, const std::vector<DataType> &values) const; + // Function type to generate a number to fill tensors. + template <typename ResultType> + using GeneratorFunctionType = std::function<ResultType(void)>; + /** Fill a tensor with a value generator function. + * + * @param[in, out] tensor To be filled tensor. + * @param[in] generate_value A function that generates values. + */ + template <typename T, typename ResultType> + void fill_with_generator(T &&tensor, const GeneratorFunctionType<ResultType> &generate_value) const; + private: // Function prototype to convert between image formats. using Converter = void (*)(const RawTensor &src, RawTensor &dst); @@ -413,9 +424,6 @@ private: using Extractor = void (*)(const RawTensor &src, RawTensor &dst); // Function prototype to load an image file. using Loader = RawTensor (*)(const std::string &path); - // Function type to generate a number to fill tensors. - template <typename ResultType> - using GeneratorFunctionType = std::function<ResultType(void)>; const Converter &get_converter(Format src, Format dst) const; const Converter &get_converter(DataType src, Format dst) const; @@ -460,14 +468,6 @@ private: */ const RawTensor &find_or_create_raw_tensor(const std::string &name, Format format, Channel channel) const; - /** Fill a tensor with a value generator function. - * - * @param[in, out] tensor To be filled tensor. - * @param[in] generate_value A function that generates values. - */ - template <typename T, typename ResultType> - void fill_with_generator(T &&tensor, const GeneratorFunctionType<ResultType> &generate_value) const; - mutable TensorCache _cache{}; mutable arm_compute::Mutex _format_lock{}; mutable arm_compute::Mutex _channel_lock{}; @@ -725,7 +725,7 @@ void AssetsLibrary::fill_tensor_uniform(T &&tensor, std::random_device::result_t case DataType::U8: case DataType::QASYMM8: { - std::uniform_int_distribution<uint8_t> distribution_u8(std::numeric_limits<uint8_t>::lowest(), std::numeric_limits<uint8_t>::max()); + std::uniform_int_distribution<unsigned int> distribution_u8(std::numeric_limits<uint8_t>::lowest(), std::numeric_limits<uint8_t>::max()); fill(tensor, distribution_u8, seed_offset); break; } @@ -734,7 +734,7 @@ void AssetsLibrary::fill_tensor_uniform(T &&tensor, std::random_device::result_t case DataType::QSYMM8_PER_CHANNEL: case DataType::QASYMM8_SIGNED: { - std::uniform_int_distribution<int8_t> distribution_s8(std::numeric_limits<int8_t>::lowest(), std::numeric_limits<int8_t>::max()); + std::uniform_int_distribution<int> distribution_s8(std::numeric_limits<int8_t>::lowest(), std::numeric_limits<int8_t>::max()); fill(tensor, distribution_s8, seed_offset); break; } @@ -826,20 +826,20 @@ void AssetsLibrary::fill_tensor_uniform_ranged(T case DataType::U8: case DataType::QASYMM8: { - const auto converted_pairs = detail::convert_range_pair<uint8_t>(excluded_range_pairs); - RangedUniformDistribution<uint8_t> distribution_u8(std::numeric_limits<uint8_t>::lowest(), - std::numeric_limits<uint8_t>::max(), - converted_pairs); + const auto converted_pairs = detail::convert_range_pair<uint32_t>(excluded_range_pairs); + RangedUniformDistribution<uint32_t> distribution_u8(std::numeric_limits<uint8_t>::lowest(), + std::numeric_limits<uint8_t>::max(), + converted_pairs); fill(tensor, distribution_u8, seed_offset); break; } case DataType::S8: case DataType::QSYMM8: { - const auto converted_pairs = detail::convert_range_pair<int8_t>(excluded_range_pairs); - RangedUniformDistribution<int8_t> distribution_s8(std::numeric_limits<int8_t>::lowest(), - std::numeric_limits<int8_t>::max(), - converted_pairs); + const auto converted_pairs = detail::convert_range_pair<int32_t>(excluded_range_pairs); + RangedUniformDistribution<int32_t> distribution_s8(std::numeric_limits<int8_t>::lowest(), + std::numeric_limits<int8_t>::max(), + converted_pairs); fill(tensor, distribution_s8, seed_offset); break; } @@ -918,7 +918,7 @@ void AssetsLibrary::fill_tensor_uniform(T &&tensor, std::random_device::result_t case DataType::QASYMM8: { ARM_COMPUTE_ERROR_ON(!(std::is_same<uint8_t, D>::value)); - std::uniform_int_distribution<uint8_t> distribution_u8(low, high); + std::uniform_int_distribution<uint32_t> distribution_u8(low, high); fill(tensor, distribution_u8, seed_offset); break; } @@ -927,7 +927,7 @@ void AssetsLibrary::fill_tensor_uniform(T &&tensor, std::random_device::result_t case DataType::QASYMM8_SIGNED: { ARM_COMPUTE_ERROR_ON(!(std::is_same<int8_t, D>::value)); - std::uniform_int_distribution<int8_t> distribution_s8(low, high); + std::uniform_int_distribution<int32_t> distribution_s8(low, high); fill(tensor, distribution_s8, seed_offset); break; } |