aboutsummaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2019-02-27IVGCVSW-2752 Make biases optional in INetworkAron Virginas-Tar
* Added new version of AddConvolution2dLayer, AddDepthwiseConvolution2dLayer and AddFullyConnectedLayer with Optional<ConstTensor> biases * Deprecated old AddConvolution2dLayer, AddDepthwiseConvolution2dLayer and AddFullyConnectedLayer methods * Made necessary changes to implementation functions Change-Id: I65eddb28dc72a9c74429c331815a96c2bfdc8c51 Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
2019-02-27IVGCVSW-2759 Add MakeOptional to enable in-place optional object constructionAron Virginas-Tar
* Added new argument-forwarding in-place constructor to Optional * Added MakeOptional utility template to allow for efficient construction of optional objects Change-Id: Iec9067fc5c3e109a26c4cc2fe8468260637b66c5 Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
2019-02-26IVGCVSW-2560 Verify Inference test for TensorFlow Lite MobileNet SSDNarumol Prangnawarat
* Assign output shape of MobileNet SSD to ArmNN network * Add m_OverridenOutputShapes to TfLiteParser to set shape in GetNetworkOutputBindingInfo * Use input quantization instead of output quantization params * Correct data and datatype in Inference test Change-Id: I01ac2e07ed08e8928ba0df33a4847399e1dd8394 Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
2019-02-25IVGCVSW-2721 Quantize and Dequantize aren't quite rightFrancis Murtagh
* Add check for infinity and negative infinity in quantize() * Add assert for NaN value in quantize and dequantize() * Add unit tests for infinity and negative infinity Change-Id: Ie60e1e15b289ccbf99df4a3281f067b82cc9f9bf Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
2019-02-22IVGCVSW-2749 Throw exception in TensorShape when requested index >= number ↵Aron Virginas-Tar
of dimensions Change-Id: I3589b1e901b0f81f6bb17848046a22829f91bb9e Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
2019-02-22IVGSVSW-2736 Fix dangling reference to temporary storageDerek Lamberti
Change-Id: Ie6c553798eac732f37148d81970366e5a4ede1be Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-02-21IVGCVSW-2429 Add Detection PostProcess Parser to TensorFlow Lite Parserkeidav01
* Added parser function in TFLiteParser * Removed custom options gating * Added unit test * Removed template usage in VerifyTensorInfo for DeserializeParser Change-Id: If198654ed70060855a05f8aaed010293405bd103 Signed-off-by: keidav01 <keith.davis@arm.com>
2019-02-20IVGSVSW-2736 Rename DeserializeParser => Deserializer & fix namespacesDerek Lamberti
Change-Id: I4166c0bbb5ba7f8b8884e71134c21f43d1fc27b0 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-02-20IVGCVSW-2583 Update verison number for 19.02Saoirse Stewart
Change-Id: I9c28b8986d10b092ddc8e9b609006b27858bf6be Signed-off-by: Saoirse Stewart <saoirse.stewart@arm.com>
2019-02-19IVGCVSW-2736 Deserialize using istream instead of filenameDerek Lamberti
Change-Id: I5656b23d9783e7f953e677001d16e41eedeb42b2 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-02-14IVGCVSW-2620 Support static quantization of ConstantMatteo Martincigh
* Added VisitConstantLayer to QuantizerVisitor * Added unit tests and refactored QuantizerTest.cpp * Code cleanup Change-Id: I118fd2be085fc98879c5cfaa09698a7c98ba13f0 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-02-14IVGCVSW-2726 Code cleanupMatteo Martincigh
* Removed extra ';' * Renamed file to fix typo Change-Id: I81a25faf01bf0a285e45fc81febf36c981d25f2f Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-02-13IVGCVSW-2662 Create ISerializer class and refactor SerializerNattapat Chaimanowong
Change-Id: I8a500182193cd218d88c2bb406bf22f496fe43d1 Signed-off-by: Nattapat Chaimanowong <nattapat.chaimanowong@arm.com>
2019-02-11IVGCVSW-2531 Serialize a simple ArmNN NetworkMike Kelly
Change-Id: I68cf5072aca6e3a8b3b8c57e19b6d417cd5813fc Signed-off-by: Mike Kelly <mike.kelly@arm.com>
2019-02-11IVGCVSW-2676 Make biases optional in ILayerVisitor for Convolution2D, ↵Aron Virginas-Tar
DepthwiseConvolution2D and FullyConnected Change-Id: I3048504ff699fdb266488e7c07b7262e5843d4b0 Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
2019-02-11IVGCVSW-2581 Create DeserializerKevin May
* Add deserialize parser for input, output and add layers * Add Unit Tests for simple network Change-Id: Ia0e2a234896bbe401ed0da5f18c065cb5df51bfb Signed-off-by: Kevin May <kevin.may@arm.com> Signed-off-by: Saoirse Stewart <saoirse.stewart@arm.com>
2019-02-08IVGCVSW-2672 Code cleanup after changesMatteo Martincigh
* Minor code cleanup and refactoring Change-Id: I9c6390c15944686134ddf4b47839762f2bb13922 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-02-08IVGCVSW-2607 Implement Input range override mechanismMatteo Martincigh
* Added the OverrideInputRange method to the Quantizer API * Created OverrideInputRangeVisitor to implement the override mechanism * Moved the quantizer utility functions to the new NetworkQuantizerUtils files * Moved the map of quantization ranges out of the StaticRangeVisitor and into the NetworkQuantizer * Added unit tests * Code refactoring and cleanup Change-Id: I9c1d006c1b6a35fbc04584a832fbe489f8f9276d Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-02-08IVGCVSW-2559 End to end tests for Detection PostProcessNarumol Prangnawarat
* end to end tests for Detection PostProcess float and uint8 * add anchors to AddDetectionPostProcessLayer * add anchors to VisitDetectionPostProcessLayer * refactor code Change-Id: I3c5a9a4a60b74c2246b4a27692bbf3c235163f90 Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
2019-02-06IVGCVSW-2606 Produce quantized InputNetwork from simple FP32 InputNetworkDerek Lamberti
Change-Id: I2140a7af5961ddf8267fbb127202de3900ea79e3 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-02-04IVGCVSW-2557 Ref Workload Implementation for Detection PostProcessNarumol Prangnawarat
* implementation of DetectionPostProcessQueueDescriptor validate * add Uint8ToFloat32Workload * add implementation of Detection PostProcess functionalities * add ref workload implemenentation for float and uint8 * add layer support for Detection PostProcess in ref * unit tests Change-Id: I650461f49edbb3c533d68ef8700377af51bc3592
2019-01-30IVGCVSW-2458 Refactor the Optimize function (Network.cpp) so thatMatteo Martincigh
subgraphs are optimized by the backends * Added a new method OptimizeSubGraph to the backend interface * Refactored the Optimize function so that the backend-specific optimization is performed by the backend itself (through the new OptimizeSubGraph interface method) * Added a new ApplyBackendOptimizations function to apply the new changes * Added some new convenient constructors to the SubGraph class * Added AddLayer method and a pointer to the parent graph to the SubGraph class * Updated the sub-graph unit tests to match the changes * Added SelectSubGraphs and ReplaceSubGraphConnections overloads that work with sub-graphs * Removed unused code and minor refactoring where necessary Change-Id: I46181794c6a9e3b10558944f804e06a8f693a6d0
2019-01-29IVGCVSW-2569 Add implementation of ConstTensor Accept functionsjimfly01
* Create the required ConstTensors and pass them to the appropriate visit method. Back fill of dummies added during IVGCVSW-2547 * Moved the VisitDetectionPostProcessLayer function declaration in ILayerVistor to its correct location after the VisitDepthwiseConvolution2dLayer functions. Change-Id: I0bd2f8c3603cbdb933b1216ead96dd8273eb5013
2019-01-25IVGCVSW-2556 Add Layer implementation for Detection PostProcessNarumol Prangnawarat
* Add DetectionPostProcessDescriptor. * Add implementation for DetectionPostProcessLayer. * Unit test to validate output. Change-Id: If63e83eb2a2978c549071c7aeb272906e7c35fe9
2019-01-25IVGCVSW-2547 Add Accept function to IConnectableLayerjimfly01
* Layers which callback VisitXXXLayer with ConstTensor have been implemented with dummies to speed up implementation and unblock IVGCVSW-2531 Change-Id: I49b8035f12ec72d6bd6cee95075692f98c48e193
2019-01-24IVGCVSW-2555 Add no-op implementation for Detection PostProcessNarumol Prangnawarat
* 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
2019-01-24IVGCVSW-2546 Add ILayerVisitor to the public APIjimfly01
Change-Id: I803de435a538856de2daa7872e27d3f5beabba4f
2019-01-23IVGCVSW-1048 RESIZE_BILINEAR NEON operatorSadik Armagan
* Implemented NeonResizeBilinearWorkload * Enable ResizeBilinear Operator unit tests for Neon !android-nn-driver:405 Change-Id: Iec3100ccaf7d246e8eaf683d1f3ec9191df5241e
2019-01-23IVGCVSW-2455 Move the extra backend code to a new git repoMatteo Martincigh
* 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
2019-01-23IVGCVSW-2467 Update Boolean type supportNattapat Chaimanowong
Change-Id: I0ab3339e8803a3e4e700d8fec9883eccc524b31e
2019-01-22IVGCVSW-2467 Remove GetDataType<T> functionNattapat Chaimanowong
Change-Id: I7359617a307b9abb4c30b3d5f2364dc6d0f828f0
2019-01-16IVGCVSW-2508 Add no-op factory implementations and layer for Gather operatornarpra01
* 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
2019-01-15IVGCVSW-2454 Merge together the pluggable backends work (was in aMatteo Martincigh
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
2019-01-11IVGCVSW-2454 Refactor ArmNN to support pluggable backends from a separateMatteo Martincigh
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
2019-01-07IVGCVSW-2371 Add Rsqrt Ref implementationMohamed Nour Abouelseoud
*Added Unit Tests Change-Id: I6cceb8e6dcda35ce08415f8e5ca86019a64d26e3
2018-12-24IVGCVSW-59 Add documentation to the public APIConor Kennedy
* Add documentation to the Descriptors * Add documentation to the layers Change-Id: I5e0849753903565227fd47d329a600fd90b2feb9
2018-12-20IVGCVSW-2164 Added ACL implementation of SpaceToBatchNd operation to ArmNNSadik Armagan
!android-nn-driver:428 Change-Id: I42e59ad96d2c80f46b085182855d34b710a74dfe
2018-12-17IVGCVSW-2398 Add no-op factory implementations for all backends for theFrancisMurtagh
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
2018-12-14IVGCVSW-2377 Add no-op factory implementations for all backends for theMatteo Martincigh
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
2018-12-13IVGCVSW-2348 Support boolean data typeruoyan01
Change-Id: Ifd28e049192e6f5fe5c0f5d358afb2b530eef882
2018-12-11IVGCVSW-1434 Add debug mode to Optimizerkeidav01
* Modified optimizer to support debug mode via DebugLayer Change-Id: Ic8f313778e55540c182cf99876c44a0823be04c6
2018-12-07IVGCVSW-2268 Remove the input swizzling from ParseConcatMatteo Martincigh
* 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
2018-12-06IVGCVSW-2315 Add descriptor for DebugNattapat Chaimanowong
Change-Id: I6b26c681989ef815752186f027a245ef8da7aea2
2018-12-03IVGCVSW-2315 Add DebugLayer and no-op factory methodNattapat Chaimanowong
Change-Id: I5455b720565248ff94278e76887d63f8434a7b58
2018-11-29IVGCVSW-2245 Add Minimum Layer and no-op Factory implementationkevmay01
Change-Id: I03fa374fd9692d98257de709f8c3ad0a49c88b95
2018-11-28IVGCVSW-2253 Add maximum layer and corresponding no-op factory implementationNattapat Chaimanowong
Change-Id: I8964f5e8978c2d2a07734a381e3f7c656c22456a
2018-11-28IVGCVSW-1199: BATCH_TO_SPACE_ND integrate Arm Compute CLMike Kelly
Change-Id: Ic772acf481caed6e8a6b99f68a63dfc2a34c24dc
2018-11-26Fix documentation for depthwise convolutionRob Hughes
Change-Id: Ib2bf543fc4f855da94eb1d34a91637f7868321cd
2018-11-26Fix compile errors on WindowsRob Hughes
Change-Id: I40acb42360bfcda09485efb2a54144d8e35bdafb
2018-11-21IVGCVSW-2086 Update StridedSliceLayer and StridedSliceDescriptorNattapat Chaimanowong
Change-Id: Ifa88a879dd239f60ab27330d6b73859393828ef0