saoste01 [Thu, 24 Jan 2019 12:31:58 +0000 (12:31 +0000)]
IVGCVSW-2554 Update NEON scheduler to output workload names rather than unknown
Change-Id: I0d14baf9002c894790da171a6d60c0e4ac929078
Narumol Prangnawarat [Wed, 23 Jan 2019 18:06:26 +0000 (18:06 +0000)]
IVGCVSW-2555 Add no-op implementation for Detection PostProcess
* Added DetectionPostProcessQueueDescriptor to WorkloadData
* Added CreateDetectionPostProcess function in WorkloadFactory.hpp
* Added stub implementation of the CreateDetectionPostProcess
in workload factories
* Added DetectionPostProcessLayer stub implementation
* Added AddDetectionPostProcessLayer to Network
* Added IsDetectionPostProcessSupported to LayerSupportBase
Change-Id: Ifc071b3b6b12877c997bdcc43d769c8f891d5c6c
kevmay01 [Thu, 24 Jan 2019 14:05:09 +0000 (14:05 +0000)]
IVGCVSW-2503 Refactor RefElementwiseWorkload around Equal and Greater
* Remove Equal and Greater from RefElementwiseWorkload
* Create RefComparisonWorkload and add Equal and Greater
* Update ElementwiseFunction for different input/output types
* Update TfParser to create Equal/Greater with Boolean output
* Update relevant tests to check for Boolean comparison
Change-Id: I299b7f2121769c960ac0c6139764a5f3c89c9c32
FrancisMurtagh [Thu, 24 Jan 2019 10:53:39 +0000 (10:53 +0000)]
IVGCVSW-2512 Add Gather operator parser to TfParser
* Add ParseGather to TFParser
* Add Unit tests for Gather Operator
!armnn:562
Change-Id: Idff45c2d3d8d683aa9eb2c4a63123c8d6054609e
jimfly01 [Wed, 23 Jan 2019 16:10:17 +0000 (16:10 +0000)]
IVGCVSW-2546 Add ILayerVisitor to the public API
Change-Id: I803de435a538856de2daa7872e27d3f5beabba4f
Finn Williams [Tue, 22 Jan 2019 14:18:11 +0000 (14:18 +0000)]
IVGCVSW-2430 Add logistic parser to tf-lite
* Added implementation and unit tests for
sigmoid function for tf-lite parser
* Refactored relu, relu6 and logisitc parser
to reduce code duplication
Change-Id: I00a2bd90bbc9144a2f84981f63b2cd1756b68a16
narpra01 [Wed, 23 Jan 2019 15:23:11 +0000 (15:23 +0000)]
IVGCVSW-2511 Add end to end Gather layer test
* Add end to end test for Gather operator
* Add Support for int32 to Constant layer for Ref
* Add Int32Workload
* Add RefConstantWorkload as template for float, uint8, int32
* Remove unused RefBaseConstantWorkload
* Remove unused RefConstantFloat32Workload
* Remove unused RefConstantUint8Workload
* Add support check for int32 in LayerSupport functions
Change-Id: Ic970588a49ebe2aafb12be8adef52371feacaa7b
Sadik Armagan [Mon, 17 Dec 2018 11:32:16 +0000 (11:32 +0000)]
IVGCVSW-1048 RESIZE_BILINEAR NEON operator
* Implemented NeonResizeBilinearWorkload
* Enable ResizeBilinear Operator unit tests for Neon
!android-nn-driver:405
Change-Id: Iec3100ccaf7d246e8eaf683d1f3ec9191df5241e
Aron Virginas-Tar [Wed, 23 Jan 2019 14:00:00 +0000 (14:00 +0000)]
IVGCVSW-2534 Fix bug TfLiteParser::ParseReshape()
Change-Id: I44d63552d2552842f02b2c870466851581f65b1a
saoste01 [Tue, 22 Jan 2019 16:43:51 +0000 (16:43 +0000)]
IVGCVSW-2545 Update CL pin to latest master
Change-Id: If6a211ce8a25cf95bb8b02851694e9502d25e671
Matteo Martincigh [Tue, 15 Jan 2019 16:11:44 +0000 (16:11 +0000)]
IVGCVSW-2455 Move the extra backend code to a new git repo
* Refactored all the workload factories to use "virtual" properly
* Removed the precompiled layer support from the optimizer
* Disabled compiler optimization for debug build to ease debugging
Change-Id: I6ab83abd78f422771359295e25b79bb9be613cfd
Nattapat Chaimanowong [Wed, 23 Jan 2019 09:59:14 +0000 (09:59 +0000)]
IVGCVSW-2467 Update Boolean type support
Change-Id: I0ab3339e8803a3e4e700d8fec9883eccc524b31e
Matthew Bentham [Mon, 21 Jan 2019 15:45:51 +0000 (15:45 +0000)]
IVGCVSW-2515 Fix compilation when TfParser is disabled
Change-Id: Ia0019134f76764cd4fe6ed9dc1423b8aba411d33
narpra01 [Fri, 18 Jan 2019 16:53:53 +0000 (16:53 +0000)]
IVGCVSW-2510 Ref workload implementation for Gather operator
* add implemenentation for GatherQueueDescriptor validate function
* add FirstInputTypedWorkload to allow type check on the first input tensor only
* add ref workload implemenentation for float and uint8
* add Gather layer support in Ref
* unit tests
Change-Id: I4578a3211f11d24aa29d15bcf7f45b0445bcd1ee
Matthew Bentham [Tue, 22 Jan 2019 17:26:59 +0000 (17:26 +0000)]
Fix compilation wrt IVGCVSW-2467
Change-Id: I073473774e302c2d77e717e1ad718594ce1b5feb
Bruno Goncalves [Thu, 27 Dec 2018 16:20:35 +0000 (14:20 -0200)]
Added AddBroadcastReshapeLayer method to TfLiteParser
Change-Id: I6027f6dcdb3ed23505f0a9c780bd3e3d45d3daff
narpra01 [Wed, 16 Jan 2019 17:22:19 +0000 (17:22 +0000)]
IVGCVSW-2509 Add GatherLayer implementation
* implementation of ValidateTensorShapesFromInputs
* unit tests
Change-Id: I1ed88f8ba0ea20329a259c5f36caea4b1fbeb013
Nattapat Chaimanowong [Tue, 22 Jan 2019 16:10:44 +0000 (16:10 +0000)]
IVGCVSW-2467 Remove GetDataType<T> function
Change-Id: I7359617a307b9abb4c30b3d5f2364dc6d0f828f0
Aron Virginas-Tar [Tue, 22 Jan 2019 14:10:39 +0000 (14:10 +0000)]
IVGCVSW-2535 Fix crash in ExecuteNetwork when no compute device is specified
Change-Id: If8d6516286557a6381561805cd53b5659b38f6a6
Bruno Goncalves [Wed, 19 Dec 2018 14:52:01 +0000 (12:52 -0200)]
Added ParsePad method to TfLiteParser
Change-Id: I2e671f66cf1b0a24b4ca9e96b554dc7db3af9655
Bruno Goncalves [Wed, 19 Dec 2018 14:51:45 +0000 (12:51 -0200)]
Added ParseMean method to TfLiteParser
Change-Id: Idfedf82479fb3d4bb2962fc3cfc6c76e57331943
Bruno Goncalves [Tue, 18 Dec 2018 15:40:30 +0000 (13:40 -0200)]
Added ParseMul method to TfLiteParser
Change-Id: I72e61a5ece52d69b289a1559907e2fb3084bfa4a
Bruno Goncalves [Tue, 18 Dec 2018 14:56:22 +0000 (12:56 -0200)]
Added ParseAdd method to TfLiteParser
Change-Id: I24d916eca8ef1efb70d08b5c4f5123bb56a76c3e
narpra01 [Wed, 16 Jan 2019 09:53:09 +0000 (09:53 +0000)]
IVGCVSW-2508 Add no-op factory implementations and layer for Gather operator
* Added GatherQueueDescriptor to WorkloadData
* Added CreateGather function in WorkloadFactory.hpp
* Added stub implementation of the CreateGreater function in workload factories
* Added GatherLayer stub implementation
* Added AddGatherLayer to Network
* Added IsGatherSupported to LayerSupportBase
Change-Id: I0408fd54e88a7d4e3d9e1c2811a9323f0da52a04
Matthew Bentham [Tue, 15 Jan 2019 17:57:00 +0000 (17:57 +0000)]
Github issue #120 - Embed TfLite schema
Change-Id: I57375375b2f3f59b89dbf45750f733bf25b5eb90
Ferran Balaguer [Wed, 16 Jan 2019 11:21:56 +0000 (11:21 +0000)]
IVGCVSW-1656 Add Mean support to Tf Parser
* Update TensorFlowSupport.md
Change-Id: I6fb7f4a4b32397901e0c8b44477a8238879e5917
Matteo Martincigh [Fri, 11 Jan 2019 13:25:59 +0000 (13:25 +0000)]
IVGCVSW-2454 Merge together the pluggable backends work (was in a
separate branch) and master
* Brings in all the changes done for the pluggable backends
* Added sub-graph support and tests
* Added precompiled layer support and tests
* Moved BackendSettings to a separate file
* Removed the backend-specific code
* Ported DebugLayer and associated functionality
* Included fixes to make those changes work with master
Change-Id: Id7028fa7917527b844628d5aff5732e3d94c0488
Éanna Ó Catháin [Mon, 14 Jan 2019 15:50:08 +0000 (15:50 +0000)]
MLCE-86 Reversing the pad list in the ClPadValidate function similarly to whats done in the constructor.
Change-Id: I9488cebd63767c0c51d9ee6333d5aaf0e4a85847
Ferran Balaguer [Fri, 11 Jan 2019 19:29:18 +0000 (19:29 +0000)]
IVGCVSW-1656 Add Mean support to Tf Parser
Change-Id: I3d31d6b72be1984acdb51fd9e7b5488a7aa5d832
Matteo Martincigh [Thu, 10 Jan 2019 17:34:20 +0000 (17:34 +0000)]
IVGCVSW-2454 Refactor ArmNN to support pluggable backends from a separate
code base
* Made the virtual functions in ILayerSupport.hpp pure
* Created a LayerSupportBase class with the default implementation of
the interface
* Made the backend layer support classes inherit from the base
class, instead of directly from the interface
* Refactored the profiler and the profiling event classes to use
the BackendId instead of the Compute
* Implemented a proper MemCopy support method
* Changed Compute to BackendId in the profiling API and objects
* Removed static references to pluggable backends
!android-nn-driver:492
Change-Id: Id6332b5f48c980819e0a09adc818d1effd057296
Matthew Bentham [Wed, 2 Jan 2019 13:26:31 +0000 (13:26 +0000)]
MLCE-82 Add IsLayerSupported tests for MEAN
Change-Id: I43be451f490db0154021f47a2fd49d1269cf5b95
Matthew Bentham [Thu, 10 Jan 2019 12:52:31 +0000 (12:52 +0000)]
IVGCVSW-2466 Update compute library pin
Change-Id: I349f663e5e2d404930a5f9289d311e67a5a409ea
Mohamed Nour Abouelseoud [Wed, 9 Jan 2019 14:19:58 +0000 (14:19 +0000)]
IVGCVSW-2345 Add Rsqrt support in Tensorflow Parser
Change-Id: I7c7b65bd77b06925efdaf2c9c98c30994a12de42
saoste01 [Tue, 8 Jan 2019 13:55:59 +0000 (13:55 +0000)]
IVGCVSW-2438 Add Minimum operator support (CL)
* Added CL unit tests
Change-Id: Ia4af49b133774141384a177f5b042e65764bf682
Conor Kennedy [Wed, 9 Jan 2019 07:57:38 +0000 (07:57 +0000)]
IVGCVSW-2441 Add Minimum operator support (NEON)
Change-Id: I0bc48f118aba419abb659657b83224401fac0715
Matthew Bentham [Tue, 8 Jan 2019 17:52:37 +0000 (17:52 +0000)]
Refactor: Don't include all ComputeLibrary function definitions everywhere.
Just include the function definition that is specifically needed for each workload.
Also, tighten up the scope where Compute Library functions are available.
Knocks about 30seconds off a 4m30s single-threaded compile of the Neon workloads.
Change-Id: Idac438f3bc77ff978295fbc9505cb42447def145
Mohamed Nour Abouelseoud [Thu, 27 Dec 2018 12:39:16 +0000 (12:39 +0000)]
IVGCVSW-2371 Add Rsqrt Ref implementation
*Added Unit Tests
Change-Id: I6cceb8e6dcda35ce08415f8e5ca86019a64d26e3
Matteo Martincigh [Fri, 4 Jan 2019 18:01:21 +0000 (18:01 +0000)]
IVGCVSW-2421 Remove the template-based version of armnnUtils::Permute
in favor of a type-indepent implementation that takes void-pointers
* The new implementation requires the size of the type to be passed
to the function
* Updated all the usages accordingly
* Removed the old implementation no longer used
!android-nn-driver:469
Change-Id: I37f4e6d62a38fbb8ec8c39bb559a2c54c83365d4
Sadik Armagan [Thu, 27 Dec 2018 11:23:44 +0000 (11:23 +0000)]
IVGCVSW-2384 Add Split parser function to Tensor flow parser
* Added Unit test
* Updated TensorFlowSupport.md file
Change-Id: I5f07de5e91ffb681c0ad17c7c73ee0326e7f1e0a
Matteo Martincigh [Tue, 18 Dec 2018 09:26:39 +0000 (09:26 +0000)]
MLCE-77 Depthwise Convolution with depth multiplier > 1 doesn't work
* Unified ArmNN's weight format to [ M, I, H, W ] for the depthwise convolution
* Added conversion utilities to permute/reshape the weights as appropriate
when using CL and Neon backends
* Updated the reference implementation of the convolution
* Updated the relevant unit tests accordingly
!android-nn-driver:459
Change-Id: I07d0818efa9d1ca1e5dad82983aac1fe78eadb18
Nina Drozd [Fri, 4 Jan 2019 09:34:21 +0000 (09:34 +0000)]
IVGCVSW-2383: code cleanup, remove unnecessary isSupported implementations,
default cases are handled by DefaultLayerSupport
Change-Id: I31942a5e8515d6fdce9a0adf20906eaabc2b9aa6
ruoyan01 [Thu, 3 Jan 2019 15:10:00 +0000 (15:10 +0000)]
IVGCVSW-2370 Code clean up after Equal operator implementation where necessary
StringMapping was located in the backendsCommon
Change-Id: I1c4a0bfca986722c721fcb2b460c03d6e1cd4568
Mohamed Nour Abouelseoud [Wed, 2 Jan 2019 14:32:24 +0000 (14:32 +0000)]
IVGCVSW-2205 Reversed workaround for COMPMID-1813
Change-Id: Icf7ef88a2eaef80ec32cc718b0ca9d26e830ed07
Mike Kelly [Thu, 20 Dec 2018 17:03:06 +0000 (17:03 +0000)]
IVGCVSW-2308 Add Conv2d tests where stride > 1
Change-Id: Iae6a3bfad06cb669ef0abea465d03163bb8316f5
Matthew Bentham [Mon, 31 Dec 2018 15:49:42 +0000 (15:49 +0000)]
MLCE-82 Add Neon Mean support and unit tests
Factor out new BuildArmComputeReductionCoordinates function
from CL backend into ArmComputeTensorUtils.
Update NEON LayerSupport and WorkloadFactory objects
Change-Id: Icc975ec699199bffafbdb207323df509d35e1e04
narpra01 [Fri, 21 Dec 2018 18:30:00 +0000 (18:30 +0000)]
IVGCVSW-2353 Ignore control inputs in TensorFlow parser
* Allow control inputs from TensorFlow graph but ignore them in ArmNN graph.
* Add utility function to test ArmNN graph structure.
* Add ArmNN graph structure tests in TensorFlow paresr to ensure that control inputs
are ignored in ArmNN graph as well as their inputs that are not used anywhere else.
Change-Id: Ib0ea0d2df85e3fc79b748fa4c9d20e0649352bc1
Matthew Bentham [Wed, 12 Dec 2018 16:15:59 +0000 (16:15 +0000)]
MLCE-80 Remove strong typing from NeonBatchNormalization
Technical debt work towards adding some new Neon workloads
Change-Id: I08ab6dd14d0e89d4ebc8a878fb69caa5681012bf
Ferran Balaguer [Fri, 28 Dec 2018 18:15:24 +0000 (18:15 +0000)]
IVGCVSW-2375 Add ParseAddN function to TfParser
* Unit tests in AddN.cpp
Change-Id: Ifb2fa1051d5d92c5d9a5ca751abee4e81ebe39c9
Matthew Bentham [Mon, 31 Dec 2018 13:40:25 +0000 (13:40 +0000)]
Update to latest compute library
Change-Id: I297aac3c57d201fdbd71119f004a64f57ec5657f
Sadik Armagan [Mon, 24 Dec 2018 09:01:31 +0000 (09:01 +0000)]
IVGCVSW-2389 WorkloadUtils: Add profiling to tensor mapping.
Change-Id: Ibe1b27b268011878c7dce3c96efea01402453027
Mark O'Connor [Wed, 28 Nov 2018 09:12:45 +0000 (10:12 +0100)]
Update README.md
Change-Id: I74f0d27881fcc42d962fdd61562811a1f53dd0eb
Conor Kennedy [Fri, 21 Dec 2018 14:38:36 +0000 (14:38 +0000)]
IVGCVSW-59 Add documentation to the public API
* Add documentation to the Descriptors
* Add documentation to the layers
Change-Id: I5e0849753903565227fd47d329a600fd90b2feb9
jimfly01 [Tue, 18 Dec 2018 16:24:51 +0000 (16:24 +0000)]
IVGCVSW-2380 Add Greater operator to TfParser
* Unit tests in Greater.cpp
Change-Id: Ifb3e4c33be2d6235e33889bb63e6abd78bd7d8b6
Sadik Armagan [Thu, 20 Dec 2018 16:19:12 +0000 (16:19 +0000)]
IVGCVSW-2164 Added ACL implementation of SpaceToBatchNd operation to ArmNN
!android-nn-driver:428
Change-Id: I42e59ad96d2c80f46b085182855d34b710a74dfe
FrancisMurtagh [Thu, 20 Dec 2018 16:09:45 +0000 (16:09 +0000)]
IVGCVSW-2401 & IVGCVSW-2402 Add end-to-end test for Greater/Equal Operator
* Add Arithmetic end-to-end test implementation
* Enable tests for float, Uint8 and Broadcast
Change-Id: I81c7096e9b6ad29eaa935b74ad5f30f823be2331
Nattapat Chaimanowong [Thu, 20 Dec 2018 14:14:06 +0000 (14:14 +0000)]
IVGCVSW-2212 Add Neon support for Maximum operator
Change-Id: Iddae3486641d2d195827ae4e0a9dfa3f7ccd65e3
keidav01 [Wed, 19 Dec 2018 10:04:58 +0000 (10:04 +0000)]
IVGCVSW-2211 Maximum operator support (CL)
* Added CLMaximumWorkload implementation
* Added CL unit tests
Change-Id: I922c83fe25d17be21a5d0f4e861038463cb09789
jimfly01 [Wed, 19 Dec 2018 13:14:46 +0000 (13:14 +0000)]
IVGCVSW-2367 Add Equal Operator to TfParser
* Unit tests in Equal.cpp
* Fixed error in Network::AddEqualLayer
* Refactored TfParser::Minimum/Equal to get rid of duplicate code
Change-Id: I0ed6f888eb391c995b88be20dc0c1b916dd14c3c
Nattapat Chaimanowong [Wed, 19 Dec 2018 11:48:59 +0000 (11:48 +0000)]
Update CL pin to the latest master
Change-Id: I045bc90124ea1303dffb0532e10b36ee107f9ee3
FrancisMurtagh [Wed, 19 Dec 2018 10:56:15 +0000 (10:56 +0000)]
IVGCVSW-2379 Add Greater Ref workload implementation
* Added the Greater operation as an element-wise workload
* Added the unit tests
Change-Id: Ie00ee30e47a5f5e17a728032eeb11a085d06c8f2
FrancisMurtagh [Tue, 18 Dec 2018 12:57:35 +0000 (12:57 +0000)]
IVGCVSW-2365 Add Reference Equal Workload Implementation
* Add reference equal workload
* Add Reference Workload Unit Test
Change-Id: If2848e7dde4248566b99d91726d08143c40ff80d
keidav01 [Mon, 10 Dec 2018 18:16:07 +0000 (18:16 +0000)]
IVGCVSW-2131 Implementation of StridedSlice operation
* Added ACl Implementation to ArmNN
* Added helper function for setting CL Strided Slice arguments
Change-Id: Ie10d387fdb054027ea9b8782743d270bb72949c1
FrancisMurtagh [Mon, 17 Dec 2018 12:11:36 +0000 (12:11 +0000)]
IVGCVSW-2398 Add no-op factory implementations for all backends for the
Equal operation
* Add QueueDescriptor in WorkloadData.hpp
* Add CreateEqual function in WorkloadFactory.hpp
* Added stub implementation of the CreateEqual function in RefWorkloadFactory,
NeonWorkloadFactory and ClWorkloadFactory
Change-Id: Iec6dc2f989c67fa6f0c32cfb93508995c8580783
kevmay01 [Mon, 17 Dec 2018 15:32:45 +0000 (15:32 +0000)]
IVGCVSW-2399 Margin of error too severe for ValidateBiasTensorQuantisation
Change-Id: I56f56398e7c2c2ac57a96952237e7f1bc0ced208
kevmay01 [Mon, 17 Dec 2018 14:28:03 +0000 (14:28 +0000)]
IVGCVSW-2395 TfLiteParse::ParseReshape doesn't support reshape input
Change-Id: If2a31a49df3701877ce0287a81c569334a24cd20
Matteo Martincigh [Fri, 14 Dec 2018 13:12:13 +0000 (13:12 +0000)]
Update the CL pin to the latest master
Change-Id: Ib3c7cfccbe8933a0c2423f37c363926571968d9e
Matthew Bentham [Mon, 17 Dec 2018 09:23:36 +0000 (09:23 +0000)]
IVGCVSW-2386 Work around Compute Library Arm v7 issue
per COMPMID-1818 change to using Blob-based memory manager.
Will change back when COMPMID-1848 is fixed.
Change-Id: I6e22c2edf422202410faa717b330a2c96c3ebbe5
Matteo Martincigh [Thu, 13 Dec 2018 12:48:25 +0000 (12:48 +0000)]
IVGCVSW-2377 Add no-op factory implementations for all backends for the
Greater operation
* Added QueueDescriptor in WorkloadData.hpp
* Added CreateGreater function in WorkloadFactory.hpp
* Added stub implementation of the CreateGreater function in RefWorkloadFactory,
NeonWorkloadFactory and ClWorkloadFactory
* Added GreaterLayer stub implementation
* Renamed ArithmeticBaseLayer to ElementwiseBaseLayer
Change-Id: I7e38c2936de905da921a92ba3f918478169ec7f5
ruoyan01 [Wed, 12 Dec 2018 18:11:25 +0000 (18:11 +0000)]
IVGCVSW-2348 Support boolean data type
Change-Id: Ifd28e049192e6f5fe5c0f5d358afb2b530eef882
Matteo Martincigh [Wed, 12 Dec 2018 09:20:55 +0000 (09:20 +0000)]
IVGCVSW-2363 Remove swizzling option from GetConstTensor in TfParser.cpp
Change-Id: I9f9852766e4c51151d6ccf34976c4860a83dfe5c
keidav01 [Tue, 11 Dec 2018 16:14:20 +0000 (16:14 +0000)]
IVGCVSW-1434 Add debug mode to Optimizer
* Modified optimizer to support debug mode via DebugLayer
Change-Id: Ic8f313778e55540c182cf99876c44a0823be04c6
Matteo Martincigh [Tue, 11 Dec 2018 13:46:52 +0000 (13:46 +0000)]
Fix the ONNX parser tests issues due to a change in the latest ONNx master
* A recent change in ONNX now forces the data types to be indicated by the
integer corresponding to their original enum value
* The new values are taken from the TensorProto_DataType enum at onnx.pb.h:153
Change-Id: I6054611795a7edb11463396eaefc4dd7e27261a0
Ferran Balaguer [Tue, 11 Dec 2018 10:29:05 +0000 (10:29 +0000)]
IVGCVSW-2266 Remove the input swizzling from ParseDepthwiseConv2D
Change-Id: I72d94fff4cdad2c62dff98c8fd52eba78a1908f0
Matteo Martincigh [Mon, 10 Dec 2018 13:45:27 +0000 (13:45 +0000)]
Fix the ONNX parser build
* Fixed invalid conversion issues to onnx::TensorProto::DataType
Change-Id: If8f1cef1d02a22cfecf24135a960923d3ad0e14c
Matthew Bentham [Mon, 10 Dec 2018 17:05:25 +0000 (17:05 +0000)]
IVGCVSW-2346 Fix test wrt NEFillBorderKernel index
Kernel position within the layer is part of the kernel name
Change-Id: I3b9ee870fbd0db025f1515c81245f917189ae884
Mohamed Nour Abouelseoud [Mon, 10 Dec 2018 14:19:41 +0000 (14:19 +0000)]
IVGCVSW-2354 Remove dimension validation from softmax
Change-Id: I0d69a72df9e348cbeca690926485c050499d1051
Matthew Bentham [Mon, 10 Dec 2018 10:48:52 +0000 (10:48 +0000)]
MLCE-79 NEON QASYMM8 Addition Support
Unit tests not yet added as need Compute Library
a84faffd.
Change-Id: Ica16df493e8d6a76da9d1f74bf43b8403f9dff62
Matthew Bentham [Mon, 10 Dec 2018 13:14:37 +0000 (13:14 +0000)]
IVGCVSW-2346 Fix test wrt NEFillBorderKernel
NEFillBorderKernel may not be issued for some activation workloads
depending on the version of the Compute Library.
Change-Id: I01b8960f9eb7a0192cd351eddbb416ac05248b34
Matteo Martincigh [Thu, 6 Dec 2018 12:03:17 +0000 (12:03 +0000)]
IVGCVSW-2268 Remove the input swizzling from ParseConcat
* Removed the input swizzling when the concatenation dimension is 3
in ParseConcat in the TF parser
* No longer using the helper ProcessConcatInputTensorInfo, where
the input was being swizzled if the concatenation dimension was 3
* Added a new convenience constuctor to TensorShape that initializes
a shape to all zeros given only the number of dimensions
Change-Id: I82a207e41bddc5fea21a0b5a38eafa24ad75d1c2
Mohamed Nour Abouelseoud [Thu, 6 Dec 2018 16:48:39 +0000 (16:48 +0000)]
IVGCVSW-836 Remove 2D validation in Softmax
Change-Id: I87c53c78dd033871dbc543550a61d2d535e752ac
Nattapat Chaimanowong [Thu, 6 Dec 2018 11:54:33 +0000 (11:54 +0000)]
IVGCVSW-2316 Add reference implementation and unit tests for Debug
Change-Id: Ib2e5de2a057da57ef77a9f5c4367d699d4773294
jimfly01 [Tue, 4 Dec 2018 17:47:22 +0000 (17:47 +0000)]
IVGCVSW-2333 Add ParseSub method to TfParser
* Also added unit test Sub.cpp
Change-Id: I6d23c11ae894ee433cd28ffdf0248b14e01b0131
jimfly01 [Thu, 6 Dec 2018 16:19:52 +0000 (16:19 +0000)]
IVGCVSW-2275 Remove swizzling from ParseResizeBilinear
Change-Id: I0d02faf188f441f017967057f16f4661d321978a
FrancisMurtagh [Thu, 6 Dec 2018 15:26:04 +0000 (15:26 +0000)]
IVGCVSW-2277 Remove the input swizzling from ParsePooling2d
* Remove input swizzling from ParsePooling2D and add parameterized
tests for NCHW, NHWC and Padding="SAME".
Change-Id: I4786fcc31b6ac46bf19d887f007963eb924f0f9f
Mohamed Nour Abouelseoud [Thu, 6 Dec 2018 14:29:25 +0000 (14:29 +0000)]
Removed square kernel in range validation in CaffeParser
as validation assumptions should not be made and
should be handled by the backend
Change-Id: I1565daeb0abfdc0bb01981eab2a1937a5af7976e
Matteo Martincigh [Thu, 6 Dec 2018 09:06:29 +0000 (09:06 +0000)]
IVGCVSW-2193 ExpandDims operation implementation
* Fix for a signedness error in Android 32 builds
Change-Id: Id909ee2d50f376782de3b80aaef503e08f6d1268
Nattapat Chaimanowong [Wed, 5 Dec 2018 15:17:18 +0000 (15:17 +0000)]
IVGCVSW-2315 Add descriptor for Debug
Change-Id: I6b26c681989ef815752186f027a245ef8da7aea2
ruoyan01 [Tue, 4 Dec 2018 18:24:08 +0000 (18:24 +0000)]
IVGCVSW-2276: Remove the input swizzling in ParseLrn
Change-Id: If5ef3dc426bd6fa5aab342dcece6e99f86e65dba
Matteo Martincigh [Wed, 5 Dec 2018 13:10:45 +0000 (13:10 +0000)]
IVGCVSW-2267 Remove the input swizzling from ParseFusedBatchNorm
* Removed the input swizzling when the data layout is NHWC
* Split the unit test into NHWC and NCHW cases
Change-Id: I6b9fef70bc4ba5e01d14cbfaea3c842a289b0a0e
Matteo Martincigh [Wed, 28 Nov 2018 16:22:36 +0000 (16:22 +0000)]
IVGCVSW-2264 Remove input swizzling from ParseConv2D in the TF parser
* Removed the input swizzling when the data layout is NHWC
* Permuting weights depending on the data layout used
* Added getter methods to ParsedConstTfOperation to get the tensor
info and the storage memory area, needed for swizzling the weights
* Added unit tests for both NHWC and NCHW data layouts
Change-Id: I6543900c594417df630b2663d8551158b93b7836
Conor Kennedy [Wed, 5 Dec 2018 11:05:54 +0000 (11:05 +0000)]
IVGCVSW-2193 ExpandDims operation implementation
* Add ExpandDims operation to TfParser.cpp
Change-Id: Ifa756ae0667c11e3b6daec8f6dd4e54cac88d16a
jimfly01 [Tue, 4 Dec 2018 10:09:52 +0000 (10:09 +0000)]
IVGCVSW-2296 Add ParsePad method to TfParser
* Also added unit test armnnTfParser/test/Pad.cpp
* Added missing 'Pad' entry to GetLayerTypeAsCString(LayerType)
* Fixed the RefLayerSupport.IsPadSupported, now it returns true
* Small fix in Optimize. Only resolve stringstream to string once
Change-Id: Ieaa1886858a48cd761ac5f30454f73e44bdd4b8f
Matteo Martincigh [Wed, 28 Nov 2018 16:22:22 +0000 (16:22 +0000)]
IVGCVSW-2264 Move DataLayoutIndexed to armnnUtils
* Since DataLayoutIndexed is now required in the TF parser, this
changes move it to the armnnUtils library so that it'll be
accessible by the armnnTfParser
* Modified CMake files and Android.mk files accordingly
Change-Id: Ie2620359ef288aeff64cb9e9bec068a466eee0e9
Nattapat Chaimanowong [Tue, 4 Dec 2018 13:47:02 +0000 (13:47 +0000)]
IVGCVSW-2251 Add support for Minimum operator in TfParser
Change-Id: Ib84e5bde39d706c5125e0f84577195fc61107a4a
Éanna Ó Catháin [Tue, 4 Dec 2018 10:29:06 +0000 (10:29 +0000)]
IVGCVSW-2247 Adding a min Elementwise Workload and tests
Change-Id: I017ca6c23b62a8978982de0ca4ad204cb8cf7c67
Sadik Armagan [Tue, 4 Dec 2018 10:02:08 +0000 (10:02 +0000)]
IVGCVSW-2256 Add parser function in TensorFlow Parser (Maximum)
* Extended Maximum operator support in TF Parser
* Added extra unit tests for Maximum operator in TF Parser
Change-Id: I68edb43b2a3105507f2f5f028ff0e35206965dca
Nattapat Chaimanowong [Mon, 3 Dec 2018 16:06:49 +0000 (16:06 +0000)]
IVGCVSW-2315 Add DebugLayer and no-op factory method
Change-Id: I5455b720565248ff94278e76887d63f8434a7b58
Éanna Ó Catháin [Mon, 3 Dec 2018 13:04:22 +0000 (13:04 +0000)]
IVGCVSW-2255 Add unit test for maximum reference workload
* Enable Maximum workload
Change-Id: I5f7786ff66f135f0c74935dbf5861e5a4239bcc8
FrancisMurtagh [Thu, 29 Nov 2018 17:13:36 +0000 (17:13 +0000)]
IVGCVSW-2118 L2Normalization ACL function used for Neon
* Changed NeonL2Normalisation to use NEL2NormalizeLayer to
normalise along the channel axis in either NCHW or NHWC format
Change-Id: Ibaf119b6a3de3c0f80f94b1c5fe9a356cf1fbd0e
FrancisMurtagh [Fri, 30 Nov 2018 17:18:55 +0000 (17:18 +0000)]
IVGCVSW-2312 Update CL pin to include their L2Normalization Neon changes
* Updated Revision number in the get_compute_library.sh to after the
implementation of COMPMID-1645 NEL2Normalization for FP32/FP16 & NHWC
Change-Id: Id9f437e833aafdb83c76bec1ba3fe79fdbab1a69