aboutsummaryrefslogtreecommitdiff
path: root/src/armnn
AgeCommit message (Collapse)Author
2019-02-28IVGCVSW-2763 Fix bug in BatchToSpaceNdLayer::InferOutputShapesNattapat Chaimanowong
*Also added test case for non-zero crop and moved BatchToSpaceNd test functions together Change-Id: I142ba356165618b2811a4ab650ca6ced35220d9c Signed-off-by: Nattapat Chaimanowong <nattapat.chaimanowong@arm.com>
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-27IVGCVSW-2764 Strengthen test for thread-safety in ProfilerMatthew Bentham
Replace assert with explicit conditions so that the checks are correctly performed in release builds. Change-Id: Id69ab3cc0aa8c61021642b7250e30c255f144a3a Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
2019-02-27IVGCVSW-2632 Fix RefMerger from QAsymm8 types with different quantization ↵Ferran Balaguer
parameters Change-Id: Ie67ce4966c5e5fef618876b027292da429de1485 Signed-off-by: Ferran Balaguer <ferran.balaguer@arm.com>
2019-02-25IVGCVSW-2762 Fix missing layer name and output slot index in DebugLayer outputAron Virginas-Tar
Change-Id: Idda9c8ba244c74d931105ced90c38a12d48df48a 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-21IVGCVSW-2748 Fix bug causing std::bad_alloc in MakeTensor()Aron Virginas-Tar
Change-Id: Iff6533396e594e2716e432223780d662d99d06ec Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
2019-02-21IVGCVSW-2613 Support static quantization of BatchToSpaceFerran Balaguer
Change-Id: I44b12c5c246b7aacc789420dbe55a16efaab6f98
2019-02-18IVGCVSW-2619 Support static quantization of StridedSliceFrancis Murtagh
Change-Id: Iff0902ea2751b079563ce82fbbec6db5157c3392 Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
2019-02-18IVGCVSW-2626 Add Quantization of ResizeBilinear LayerJim Flynn
Change-Id: I0daffd23f32cc094d8309aed822cc46bb2aaa46f Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2019-02-15IVGCVSW-2618 Support static quantization of SplitterFrancis Murtagh
Change-Id: I8e44866336dcd5a9694309cf9bb954a4991e61fd Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
2019-02-15IVGCVSW-2616: static quantization of reshapeNina Drozd
Change-Id: Iaefa145b8a218b3708c8a9208fdabd4984376ae9 Signed-off-by: Nina Drozd <nina.drozd@arm.com>
2019-02-15IVGCVSW-2621 Add static quantization of MergerJim Flynn
Change-Id: I19f01698a6f9b361cd1737d76e6ec2020fab77a6 Signed-off-by: Jim Flynn <jim.flynn@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-2615 Support static quantization of Pooling2dFrancisMurtagh
Change-Id: Ica9c48adad741840b201047bb65541a19aac17f7 Signed-off-by: FrancisMurtagh <francis.murtagh@arm.com>
2019-02-13IVGCVSW-2617 Add static quantization of SpaceToBatchJim Flynn
* Some refactor of the existing QuantizePermute test for reuse Change-Id: Ifaf1afc476bad348f260fa5340c0153e7ade2703 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2019-02-12IVGCVSW-2614 Support static quantization of PermuteFrancisMurtagh
Change-Id: I4f208d18f7ac6bb04423cc26ecf61adf0ccc5d26 Signed-off-by: FrancisMurtagh <francis.murtagh@arm.com>
2019-02-12IVGCVSW-2607 Refactor range tracking into own classDerek Lamberti
Change-Id: I1b409e5dac7922859e04a554893b982afc5ad1e7 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-02-12IVGCVSW-2623 Support static quantization of DepthwiseConv2dFrancisMurtagh
Change-Id: Iab0d5aed243aca921661e4d39770fe02b1330442 Signed-off-by: FrancisMurtagh <francis.murtagh@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-2625 Support static quantization of softmaxruoyan01
Change-Id: I216344ee10bbffadb648d4aef1d9a0d9dbb4a341 Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Signed-off-by: ruoyan01 <ruomei.yan@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-2622 Add static quantization of 2DConvolutionJim Flynn
Change-Id: If7985a54eba97f7c61413e0804879e4afbf65c4d Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2019-02-11IVGCVSW-2624 Support static quantization of FullyConnectedFrancisMurtagh
Change-Id: Ib18085e7e4b2e9d55e29b14122410732e3bdd088 Signed-off-by: FrancisMurtagh <francis.murtagh@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-08Github #123 Catch exceptions by referenceMatthew Bentham
Change-Id: Ie664cb7127434ad9c7a03c4a31f3c71fdebd49b9 Signed-off-by: Matthew Bentham <Matthew.Bentham@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-07IVGCVSW-2553 Change BOOST_TEST to BOOST_CHECK_MESSAGE in CheckConstTensorPtrsJim Flynn
Change-Id: I13614fe3d29eb1040b5927dd69992aab6c136bb6 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2019-02-07IVGCVSW-2608: support static quantization of ActivationNina Drozd
Change-Id: Ia9afd15d002d4454ec72f219c5cf214704f6ae31 Signed-off-by: Nina Drozd <nina.drozd@arm.com>
2019-02-07IVGCVSW-2553 Add Unit Test for ConstTensor layer visitorsjimfly01
Change-Id: I20a67135e4af7aa1f28f5000d73122f4e5e3acd5 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2019-02-07IVGCVSW-2609 Quantize BatchNormalizationLayerDerek Lamberti
Change-Id: I7b847112a0322ffc8b88a0708d8439bfb97cfe2c Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-02-06IVGCVSW-2654 Test quantization of addition, input and outputDerek Lamberti
Change-Id: I6c61df213278e6ba65807932548bb2eaa159deba Signed-off-by: Derek Lamberti <derek.lamberti@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-2551 Add Descriptor and name only unit tests for VisitorFrancisMurtagh
* Add concrete subclasses for layers taking descriptor as argument * Add unit test cases for all layers Change-Id: Ie0135b34a5a41e5ce654b7c3186eccea392ab919 Signed-off-by: FrancisMurtagh <francis.murtagh@arm.com>
2019-02-01IVGCVSW-2552 Add unit tests for the input and output layers for VisitorFrancisMurtagh
Change-Id: I73ae9b43fa1631fdec423177d37fffc719c71f88 Signed-off-by: FrancisMurtagh <francis.murtagh@arm.com>
2019-01-31IVGCVSW-2471 Code cleanup where necessaryMatteo Martincigh
* Added comments for the new API functions * Added comments to some critical parts of the code * Removed unnecessary code Change-Id: I04d4e7373b45b8a3806cacc93a8bd09351c0972a Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
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-2549 Add name only layer unit tests for VisitorFrancisMurtagh
Change-Id: I304ddd3efa2f1c5a8e2143276a97c031a624601e
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-28IVGCVSW-2548 Add member function to check layer pointer not nullFrancisMurtagh
Change-Id: I48c8795e546e3a36414ae88316908519d5879628
2019-01-28IVGCVSW-2548 Add the TestLayerVisitor classFrancisMurtagh
* Add abstract base class TestLayerVisitor Change-Id: Id453f3ad9721f3680166a41b75a1880cf20032f7
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-2503 Refactor RefElementwiseWorkload around Equal and Greaterkevmay01
* 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
2019-01-23IVGCVSW-2511 Add end to end Gather layer testnarpra01
* 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
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