diff options
author | Ryan OShea <ryan.oshea3@arm.com> | 2022-03-09 10:29:02 +0000 |
---|---|---|
committer | KeithARM <keith.davis@arm.com> | 2022-04-13 11:14:10 +0000 |
commit | bab8fa9a11cf3bfef4b72fb757b81575b6fd75f0 (patch) | |
tree | ddec7127c8683fb38dd595d8578c94e0479af7fe /src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.hpp | |
parent | b8bf004911d635043e586198fa85e3f2a07542eb (diff) | |
download | armnn-bab8fa9a11cf3bfef4b72fb757b81575b6fd75f0.tar.gz |
IVGCVSW-6174 Add Cl Pooling3d Workload
* Add IsSupported for Pooling3d
* Add CreateWorkload case for Pooling3d
* Create new ClPooling3dWorkload header and source files
* Add Pooling3d workload to ClWorkloads.hpp
* Add tests for Pooling3d workload
* Add Pooling3d build function to ArmComputeTensorUtils
Change-Id: Ia270b0fe809a171ed73af14376de8708b346d500
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Diffstat (limited to 'src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.hpp')
-rw-r--r-- | src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.hpp | 137 |
1 files changed, 108 insertions, 29 deletions
diff --git a/src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.hpp index 8ad8111961..f17b6dfdb2 100644 --- a/src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.hpp +++ b/src/backends/backendsCommon/test/layerTests/Pooling3dTestImpl.hpp @@ -15,17 +15,20 @@ LayerTestResult<float, 5> SimpleMaxPooling3dSize2x2x2Stride1x1x1Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<uint8_t, 5>SimpleMaxPooling3dSize2x2x2Stride1x1x1Uint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<int16_t, 5> SimpleMaxPooling3dSize2x2x2Stride1x1x1Int16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<float, 5> SimpleMaxPooling3dTest( armnn::IWorkloadFactory& workloadFactory, @@ -48,17 +51,20 @@ LayerTestResult<int16_t, 5> SimpleMaxPooling3dInt16Test( LayerTestResult<float, 5> IgnorePaddingSimpleMaxPooling3dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<uint8_t, 5> IgnorePaddingSimpleMaxPooling3dUint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<int16_t, 5> IgnorePaddingSimpleMaxPooling3dInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<float, 5> SimpleAveragePooling3dTest( armnn::IWorkloadFactory& workloadFactory, @@ -81,32 +87,38 @@ LayerTestResult<int16_t, 5> SimpleAveragePooling3dInt16Test( LayerTestResult<float, 5> LargeTensorsAveragePooling3dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<uint8_t, 5> LargeTensorsAveragePooling3dUint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<int16_t, 5> LargeTensorsAveragePooling3dInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<float, 5> IgnorePaddingSimpleAveragePooling3dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<uint8_t, 5> IgnorePaddingSimpleAveragePooling3dUint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<int16_t, 5> IgnorePaddingSimpleAveragePooling3dInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<float, 5> SimpleL2Pooling3dTest( armnn::IWorkloadFactory& workloadFactory, @@ -129,62 +141,128 @@ LayerTestResult<int16_t, 5> SimpleL2Pooling3dInt16Test( LayerTestResult<float, 5> IgnorePaddingSimpleL2Pooling3dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<uint8_t, 5> IgnorePaddingSimpleL2Pooling3dUint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<int16_t, 5> IgnorePaddingSimpleL2Pooling3dInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<float, 5> AsymmetricNonSquareMaxPooling3dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<uint8_t, 5> AsymmetricNonSquareMaxPooling3dUint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactor, + const armnn::DataLayout dataLayout); LayerTestResult<int16_t, 5> AsymmetricNonSquareMaxPooling3dInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); + +LayerTestResult<float, 5> AsymmetricNonSquareMaxPooling3dWithPaddingOnlyPoolTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); + +LayerTestResult<uint8_t, 5> AsymmetricNonSquareMaxPooling3dWithPaddingOnlyPoolUint8Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactor, + const armnn::DataLayout dataLayout); + +LayerTestResult<int16_t, 5> AsymmetricNonSquareMaxPooling3dWithPaddingOnlyPoolInt16Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<float, 5> AsymmetricNonSquareAveragePooling3dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<uint8_t, 5> AsymmetricNonSquareAveragePooling3dUint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<int16_t, 5> AsymmetricNonSquareAveragePooling3dInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); + +LayerTestResult<float, 5> AsymmetricNonSquareAveragePooling3dWithPaddingOnlyPoolTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); + +LayerTestResult<uint8_t, 5> AsymmetricNonSquareAveragePooling3dWithPaddingOnlyPoolUint8Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); + +LayerTestResult<int16_t, 5> AsymmetricNonSquareAveragePooling3dWithPaddingOnlyPoolInt16Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<float, 5> AsymmetricNonSquareL2Pooling3dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<uint8_t, 5> AsymmetricNonSquareL2Pooling3dUint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<int16_t, 5> AsymmetricNonSquareL2Pooling3dInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - const armnn::ITensorHandleFactory& tensorHandleFactory); + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); + +LayerTestResult<float, 5> AsymmetricNonSquareL2Pooling3dWithPaddingOnlyPoolTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); + +LayerTestResult<uint8_t, 5> AsymmetricNonSquareL2Pooling3dWithPaddingOnlyPoolUint8Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); + +LayerTestResult<int16_t, 5> AsymmetricNonSquareL2Pooling3dWithPaddingOnlyPoolInt16Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::DataLayout dataLayout); LayerTestResult<float, 5> ComparePooling3dTest( armnn::IWorkloadFactory& workloadFactory, @@ -192,7 +270,8 @@ LayerTestResult<float, 5> ComparePooling3dTest( armnn::IWorkloadFactory& refWorkloadFactory, const armnn::ITensorHandleFactory& tensorHandleFactory, const armnn::ITensorHandleFactory& refTensorHandleFactory, - armnn::PoolingAlgorithm poolingType); + armnn::PoolingAlgorithm poolingType, + const armnn::DataLayout dataLayout); LayerTestResult<uint8_t, 5> ComparePooling3dUint8Test( armnn::IWorkloadFactory& workloadFactory, @@ -200,7 +279,8 @@ LayerTestResult<uint8_t, 5> ComparePooling3dUint8Test( armnn::IWorkloadFactory& refWorkloadFactory, const armnn::ITensorHandleFactory& tensorHandleFactory, const armnn::ITensorHandleFactory& refTensorHandleFactory, - armnn::PoolingAlgorithm poolingType); + armnn::PoolingAlgorithm poolingType, + const armnn::DataLayout dataLayout); LayerTestResult<int16_t, 5> ComparePooling3dInt16Test( armnn::IWorkloadFactory& workloadFactory, @@ -208,6 +288,5 @@ LayerTestResult<int16_t, 5> ComparePooling3dInt16Test( armnn::IWorkloadFactory& refWorkloadFactory, const armnn::ITensorHandleFactory& tensorHandleFactory, const armnn::ITensorHandleFactory& refTensorHandleFactory, - armnn::PoolingAlgorithm poolingType); - - + armnn::PoolingAlgorithm poolingType, + const armnn::DataLayout dataLayout); |