diff options
author | Isabella Gottardi <isabella.gottardi@arm.com> | 2018-10-17 18:04:15 +0100 |
---|---|---|
committer | Anthony Barbier <anthony.barbier@arm.com> | 2018-11-02 16:55:45 +0000 |
commit | 089695f0d4b1ebd1bc76ba95e415bce1297808be (patch) | |
tree | 52ffe811d4544ec75059331ae806de42d0326e6c /arm_compute/core | |
parent | 20ff84d333e73c62592cab339f4648c4b706c65f (diff) | |
download | ComputeLibrary-089695f0d4b1ebd1bc76ba95e415bce1297808be.tar.gz |
COMPMID-1659: (Nightly) CLGEMMConvolutionLayer QASYMM8 TensorShape error
Change-Id: Ib4ca28b82bd82f0ed4d2c906185d3f4010246616
Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/153986
Reviewed-by: Giuseppe Rossini <giuseppe.rossini@arm.com>
Tested-by: bsgcomp <bsgcomp@arm.com>
Diffstat (limited to 'arm_compute/core')
-rw-r--r-- | arm_compute/core/utils/misc/ShapeCalculator.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/arm_compute/core/utils/misc/ShapeCalculator.h b/arm_compute/core/utils/misc/ShapeCalculator.h index 11d20c919f..56f65d0ba8 100644 --- a/arm_compute/core/utils/misc/ShapeCalculator.h +++ b/arm_compute/core/utils/misc/ShapeCalculator.h @@ -113,7 +113,15 @@ inline TensorShape compute_interleaved_shape(const ITensorInfo &a, int mult_inte const int M = a.dimension(1) * a.dimension(2); const int height = std::ceil(M / static_cast<float>(interleave_width)); shape_interleaved_a.set(1, height); - shape_interleaved_a.remove_dimension(2); + + // When the data format is NHWC and the shapes are Nx1x1 + // the tensor shape num_dimensions is automatically set to 1 instead of 3. + // To avoid failures by removing a dimension that doesn't exist + // check if the number of dimensions is greater than 2. + if(shape_interleaved_a.num_dimensions() > 2) + { + shape_interleaved_a.remove_dimension(2); + } } else { |