diff options
author | Derek Lamberti <derek.lamberti@arm.com> | 2020-01-22 15:37:29 +0000 |
---|---|---|
committer | Derek Lamberti <derek.lamberti@arm.com> | 2020-01-24 09:21:47 +0000 |
commit | d466a54e79560f0ccacc6b13cd64e08defbac47c (patch) | |
tree | d8f8d5226d71178aed32c6ad407570071e55dded /src/backends/aclCommon | |
parent | 4a3c61091037e7e86e8b03bb060d8c1ab82731a9 (diff) | |
download | armnn-d466a54e79560f0ccacc6b13cd64e08defbac47c.tar.gz |
IVGCVSW-4370 Deprecate DataType::QuantizedSymm8PerAxis
!android-nn-driver:2622
Change-Id: If99d3eff71ff66ba28af1e5af248299fe04511b9
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
Diffstat (limited to 'src/backends/aclCommon')
-rw-r--r-- | src/backends/aclCommon/ArmComputeTensorUtils.cpp | 13 | ||||
-rw-r--r-- | src/backends/aclCommon/ArmComputeTensorUtils.hpp | 2 |
2 files changed, 10 insertions, 5 deletions
diff --git a/src/backends/aclCommon/ArmComputeTensorUtils.cpp b/src/backends/aclCommon/ArmComputeTensorUtils.cpp index 1cad92f58a..04202ada90 100644 --- a/src/backends/aclCommon/ArmComputeTensorUtils.cpp +++ b/src/backends/aclCommon/ArmComputeTensorUtils.cpp @@ -13,7 +13,7 @@ namespace armnn namespace armcomputetensorutils { -arm_compute::DataType GetArmComputeDataType(armnn::DataType dataType) +arm_compute::DataType GetArmComputeDataType(armnn::DataType dataType, bool multiScales) { switch(dataType) { @@ -28,9 +28,13 @@ arm_compute::DataType GetArmComputeDataType(armnn::DataType dataType) case armnn::DataType::QSymmS16: return arm_compute::DataType::QSYMM16; case armnn::DataType::QSymmS8: - return arm_compute::DataType::QSYMM8; + { + return multiScales ? arm_compute::DataType::QSYMM8_PER_CHANNEL : arm_compute::DataType::QSYMM8; + } + ARMNN_NO_DEPRECATE_WARN_BEGIN case armnn::DataType::QuantizedSymm8PerAxis: return arm_compute::DataType::QSYMM8_PER_CHANNEL; + ARMNN_NO_DEPRECATE_WARN_END case armnn::DataType::Signed32: return arm_compute::DataType::S32; default: @@ -109,10 +113,11 @@ arm_compute::TensorShape BuildArmComputeTensorShape(const armnn::TensorShape& te // ARM Compute Tensor and CLTensor allocators. arm_compute::TensorInfo BuildArmComputeTensorInfo(const armnn::TensorInfo& tensorInfo) { + bool multiScales = tensorInfo.HasMultipleQuantizationScales(); const arm_compute::TensorShape aclTensorShape = BuildArmComputeTensorShape(tensorInfo.GetShape()); - const arm_compute::DataType aclDataType = GetArmComputeDataType(tensorInfo.GetDataType()); + const arm_compute::DataType aclDataType = GetArmComputeDataType(tensorInfo.GetDataType(), multiScales); - const arm_compute::QuantizationInfo aclQuantizationInfo = tensorInfo.HasMultipleQuantizationScales() ? + const arm_compute::QuantizationInfo aclQuantizationInfo = multiScales ? arm_compute::QuantizationInfo(tensorInfo.GetQuantizationScales()) : arm_compute::QuantizationInfo(tensorInfo.GetQuantizationScale(), tensorInfo.GetQuantizationOffset()); diff --git a/src/backends/aclCommon/ArmComputeTensorUtils.hpp b/src/backends/aclCommon/ArmComputeTensorUtils.hpp index 3fc6818b0d..01d1dea53d 100644 --- a/src/backends/aclCommon/ArmComputeTensorUtils.hpp +++ b/src/backends/aclCommon/ArmComputeTensorUtils.hpp @@ -24,7 +24,7 @@ namespace armcomputetensorutils { /// Utility function to map an armnn::DataType to corresponding arm_compute::DataType. -arm_compute::DataType GetArmComputeDataType(armnn::DataType dataType); +arm_compute::DataType GetArmComputeDataType(armnn::DataType dataType, bool multiScales); /// Utility function used to set up an arm_compute::Coordinates from a vector of ArmNN Axes for reduction functions arm_compute::Coordinates BuildArmComputeReductionCoordinates(size_t inputDimensions, |