aboutsummaryrefslogtreecommitdiff
path: root/src/armnn
AgeCommit message (Collapse)Author
2020-03-20IVGCVSW-4520 Implement BFloat16 OptimizerNarumol Prangnawarat
* Add ReduceFp32ToBf16 to OptimizerOptions * Add ConvertFp32NetworkToBf16 * Add utility functions to insert conversion layers * Add constant conversion BF16 <-> FP32 * Unit tests Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Iaff77e20c721400b052cb37eb9ef6fe16d7abaff
2020-03-20IVGCVSW-4549 Add front end for new QLSTM layerJames Conroy
* Added new layer QLstm (Android R HAL 1.3) * Made necessary updates to APIs * Added unit tests * This layer is functionally equivalent to the original unquantized LSTM layer with some additonal quantization features added. Due to this, original LstmParams are used for this layer. Signed-off-by: James Conroy <james.conroy@arm.com> Change-Id: I5b7f2d2fb6e17e81573b41a31bc55f49ae79608f
2020-03-20IVGCVSW-4582 Undefined reference to GetProfilingService causes failure in ↵Sadik Armagan
the Backends CI job * Enable the GetProfilingService() function to BackendProfilingTests and ProfilingTestUtils Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I32e3625db0f465883f2ec27fb7c2fad4e91b6306
2020-03-19IVGCVSW-4516 Add ConvertFp32ToBf16Layer and Ref workload supportNarumol Prangnawarat
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I9099a4f840fb747336f77d20a0868b64e801a310
2020-03-19IVGCVSW-4553 Fix Wrapper Object Use after free in UnitTests.hppFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I174f83c9a454b5499f817baf0bddcd4a49cac523
2020-03-19IVGCVSW-4552 Fix Wrapper Object Use after free in ProfilerTestsFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I84ab68c048675a39a67045430b2dde571b45e479
2020-03-18IVGCVSW-4463 Change ProfilingService to a member of runtime from a singletonSadik Armagan
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I345c39a10a4693a500aa1687d9a5cee76da791c3
2020-03-17IVGCVSW-4515 Add ConvertBf16ToFp32Layer and Ref workload supportNarumol Prangnawarat
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Ida6d7e1d2c9abe0618f8b711bab9d62c011090d6
2020-03-16MLCE-161: Added support for NormalizationLayer in ArmnnQuantizer.Pablo Tello
* Improved error reporting by using VisitorThrowingPolicy in DynamicQuantizationVisitor. Change-Id: I8a7d0975d448e6c2b6efb5f315ac255eec29f7a2 Signed-off-by: Pablo Tello <pablo.tello@arm.com>
2020-03-13IVGCVSW-4531 Fix for failing strided slice NNT/VTS tests on Android RDavid Monahan
Signed-off-by: David Monahan <david.monahan@arm.com> Change-Id: I7f6932f0d21b5678ab9822b0fc69f589bbbb07e5
2020-03-11IVGCVSW-4517 Modify BFloat16 to conformant to the coding standardsNarumol Prangnawarat
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I85b6967469dc1fddbbc875b34ba107480b78089a
2020-03-10IVGCVSW-4482 Remove boost::ignore_unusedJan Eilers
!referencetests:229377 Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: Ia9b360b4a057fe7bbce5b268092627c09a0dba82
2020-03-09IVGCVSW-4517 Implement BFloat16 Encoder and DecoderNarumol Prangnawarat
* Add ConvertFloat32ToBFloat16 * Add ConvertBFloat16ToFloat32 * Add BFloat16Encoder * Add BFloat16Decoder * Unit tests Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I198888384c923aba28cfbed09a02edc6f8194b3e
2020-03-09IVGCVSW-4541 Modify Timeline Packet constructionKeith Davis
* Changed TimelinePacket encoding so that there is only one header for multiple timeline swtrace messages * Refactored function names to have more suitable description * Refactored CodeStyle to coincide with ArmNN coding standards * Refactored profiling test names to be descriptive * Refactored ErrorCode name to TimelineStatus * Updated existing unit tests Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: I83bd4bb9e7393617bca97eba96a6e1388916e5b0
2020-03-09IVGCVSW-4486 Introduce numeric_cast implementationDerek Lamberti
Change-Id: I3e64bca4a1709ac199513676579cf3c9a3090f26 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2020-03-09IVGCVSW-4483 Introduce polymorphic_downcast implementationDerek Lamberti
Change-Id: I958dd719162337eb5c7e71f4ac49dd5784564b1a Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2020-03-06IVGCVSW-4517 Add BFloat16 class and unit testsNarumol Prangnawarat
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Ie2e9e617b9210d79a26e7ba58ecc874d1202e599
2020-03-03IVGCVSW-4508 Add BFloat16 data typeNarumol Prangnawarat
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Ie2fcf06d0bae9e2ef958e60ab9e8b121fdc7b590
2020-03-03IVGCVSW-4375 Add support for Transpose to optimizationsMike Kelly
* Changed some existing Permutation specific optimizations to also support Transpose * Added MoveTransposeUp optimization * Added TransposeAsReshape optimization * Added tests for Transpose optimizations * Added missing layer tests for Transpose Signed-off-by: Mike Kelly <mike.kelly@arm.com> Change-Id: I20d099b284861402ae94aaa5dbf34907327a485f
2020-03-03IVGCVSW-4314 Per-layer backend hint APIDerek Lamberti
Change-Id: I6ddcffe792e39b17fcdb8af7f13f4a689ef8019d Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2020-03-03Modifying the IBackendProfilingContext interface to return a bool onDavid Monahan
EnableProfiling and adding error checking to the Runtime Invocation Signed-off-by: David Monahan <david.monahan@arm.com> Change-Id: I65b8bb16c6f1c7d668de31238ce0408a48974997
2020-03-02IVGCVSW-4440 : Add HARD_SWISH Support to Activation in CpuRefColm Donelan
* Add a new Activiation type of HardSwish. * Add CpuRef support and tests. Signed-off-by: Colm Donelan <Colm.Donelan@arm.com> Change-Id: I68c3840aa45b7a27d5e416a5d50fe8f99f003ce8
2020-03-02IVGCVSW-4375 Add support for TransposeMike Kelly
* Added TransposeLayer * Added CL, Neon and Ref Workloads * Added Transpose utilities * Added Serializer and Deserializer support * Added Quantizer support Signed-off-by: Mike Kelly <mike.kelly@arm.com> Change-Id: I04c755ba7cb5b1edf72b3c9f3c0314878032e3c7
2020-02-28IVGCVSW-4439: Adding Elu support to ActivationDavid Monahan
* Added CpuRef implementation * Added Unit Tests * Added Quantizer Test * Enabled Tests for Neon and CL backends on fp32 only * Added to Serializer Signed-off-by: David Monahan <david.monahan@arm.com> Change-Id: Ic23e1797dbc9352b40678c389d7fe2b836b582ea
2020-02-24IVGCVSW-4368 Update Android.mk and backend.mk files with latest unit testsColm Donelan
* Sync up the Android build files with the CMakeLists.txt Signed-off-by: Colm Donelan <Colm.Donelan@arm.com> Change-Id: I1675b0937fed7c74833e46af6d077ced57cf5bed
2020-02-11Silence clang-8 warnings wrt explicit defaulting of implicitly deleted operatorMatthew Bentham
Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com> Change-Id: I9ff918e7f9fe340e65f8dd1b1c47754c8b41de1f
2020-02-07IVGCVSW-4386 Add ArmNN reference support for QAsymmS8Ryan OShea
* Added Quantization Scheme for QAsymmS8 * Added Unit Tests for QAsymmS8 * Renamed QAsymm8 calls to QAsymmU8 Signed-off-by: Ryan OShea <Ryan.OShea2@arm.com> Change-Id: I897b4e018ba1d808cc3f8c113f2be2dbad49c8db
2020-02-07IVGCVSW-4317 Implement the Profiling Context InitialisationColm Donelan
* Call CreateBackendProfilingContext on each backend from Runtime passing an instance of the BackendProfiling interface. * Modify the signature of CreateBackendProfilingContext to remove const and return a shared_ptr to BackendProfilingContext * Add concrete BackendProfiling class. * Store BackendProfilingContexts in Profiling service. Signed-off-by: Colm Donelan <Colm.Donelan@arm.com> Change-Id: I975eaa2093ae91fa623835f65f9e5b25eb65117a
2020-02-04Github #273 Handle failure to initialise BackendContext in RuntimeMatthew Bentham
Define CreateBackendContext to throw BackendUnavailableException if necessary runtime components are missing. Handle this in the constructor of Runtime by not adding those backends to the internal DeviceSpec owned by the Runtime. Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com> Change-Id: Iadffb5240e32e1f105683c4d361276b92d1e720c
2020-01-24IVGCVSW-4262 Use ACL Permute and Reshape Validate function in Neon and CLKevin May
!android-nn-driver:2642 Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: Ibabb73c0ae0df2e530a68398f75c76e6b80c0701
2020-01-24Add ARMNN_DLLEXPORT macro to import/export static data symbols on WindowsRob Hughes
Armnn has several static data symbols that are needed by the unit tests. These are now explicitly marked for import when that header is included from the unit test code. See also https://cmake.org/cmake/help/v3.4/prop_tgt/WINDOWS_EXPORT_ALL_SYMBOLS.html. Change-Id: I4e71ba659b6321659a1396125b5a9c271578040f Signed-off-by: Robert Hughes <robert.hughes@arm.com>
2020-01-24IVGCVSW-4370 Deprecate DataType::QuantizedSymm8PerAxisDerek Lamberti
!android-nn-driver:2622 Change-Id: If99d3eff71ff66ba28af1e5af248299fe04511b9 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2020-01-23IVGCVSW-4259 Add frontend and reference workload for UnaryOperationLayerjosh minor
* Added new layer named ElementwiseUnary * Deprecated existing Abs/Rsqrt layer functions * Updated existing Abs/Rsqrt test infrastructure to use new layer * Added boilerplate for new Exp,Neg,Sqrt elemwise op layers * AbsQuantize test removed pending future commit * Serialization support added !android-nn-driver:2550 Change-Id: Ic595c645925e17b45db568187fd05646daf2e87f Signed-off-by: josh minor <josh.minor@arm.com>
2020-01-23IVGCVSW-4268 Print all Descriptors on dot graphTeresa Charlin
Change-Id: I82a7dcffc3771efa8350e2e1e22cfb20969551f9 Signed-off-by: Jim Flynn <jim.flynn@arm.com> Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
2020-01-20IVGCVSW-4331 Calling RemoveDebugLayers can break connectionsMike Kelly
* Changed RemoveDebugLayers to move all connections from its OutputSlot. Signed-off-by: Mike Kelly <mike.kelly@arm.com> Change-Id: I3c649e3f660804ca48f3c2af993a5af6a7ed4d4a
2020-01-20Remove inclusion of ArmNN.hpp where it is unnecessary.Matthew Bentham
Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com> Change-Id: Idb583f8de4470eefb47c90189cd3c90e74e0440a
2020-01-20Remove use of ArmNN.hpp where it is unnecessary.Matthew Bentham
Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com> Change-Id: I6c90eab1c6bad76d5c7b3bf094998fa4b454bcd1
2020-01-20Remove use of ArmNN.hpp from other public headersMatthew Bentham
Also remove it from armnnSerializer and armnnUtils. In general code within Arm NN should only include exactly what it needs. This will help keep compile times down, and reduces the need for a complete rebuild when anything in the public headers changes. ArmNN.hpp should only be provided as a convenience for user code where the user doesn't know enough of the API to decide which specific headers they need. Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com> Change-Id: I4ffcaa7662af4f88a1babf2bf17d03da6f77d665
2020-01-16Remove Logging.hpp from ArmNN.hppMatthew Bentham
Logging.hpp is mainly useful for raising Arm NN log messages. There's very little point in automatically including it for users of the library via the ArmNN.hpp convenience header. Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com> Change-Id: I71fb3188dc0b30c1bbc86a31996470c707d38c19
2020-01-16Remove use of boost from Logging.hppMatthew Bentham
This helps prevent leaking of boost names into Arm NN public headers. Change-Id: I1605d2ed178965f8e502bc6a4b4ac3e627bbbbed Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com>
2020-01-13Rename quantized data types to remove ambiguity for signed/unsigned payloadsDerek Lamberti
!android-nn-driver:2572 Change-Id: I8fe52ceb09987b3d05c539409510f535165455cc Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2020-01-07IVGCVSW-4246 Enable -Wextra by defaultDerek Lamberti
!referencetests:218340 Change-Id: If24a604310d0363b1f09b406e4d53ebfeb106aad Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-12-31IVGCVSW-4246 Clean build of ArmNN API with -WextraFrancis Murtagh
Change-Id: I6003d2f82ca02d926dd95abee712337783eacfc7 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com> Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
2019-12-31IVGCVSW-4246 Clean build of Visitors with -WextraDerek Lamberti
Change-Id: Icb1b35ff55fa22103777853e6f49fc282d61750d Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-12-31IVGCVSW-4246 Clean build Layers with -WextraDerek Lamberti
Change-Id: I649cd2304fb0040164763d31a12fc77c6c3bed87 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-12-31Some build fixes for MSVCRob Hughes
Change-Id: I749430918b1268786690c3c8dc9fa2a9542d5d1d Signed-off-by: Robert Hughes <robert.hughes@arm.com>
2019-12-30IVGCVSW-4246 Clean build optimizations with -WextraDerek Lamberti
Change-Id: I2e0884c66855071eb3aa72b86de06c6ed6389d50 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-12-17IVGCVSW-4293 Fix multiple Concat issues.Derek Lamberti
* Fix issue with InputLayer or ConstantLayer being used as inputs to Concat. * Fix issue with same input being used multiple times for same Concat. * Fix issue where input is used by multiple concats. Change-Id: Id4819aeec5a40e2afa0351838ba082b9f74aba33 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-12-13IVGCVSW-4178 Add code to increment the 3 ArmNN countersKeith Davis
* Increment at Runtime.cpp | BackendRegistry.cpp | LoadedNetwork.cpp * Update unit tests * UID generation is now handled by backends Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: Ifa53763409078c14839675206d8b260cdc36a8df
2019-12-10IVGCVSW-4212 Example of standalone dynamic reference backendNarumol Prangnawarat
* Add example to build dynamic reference backend * Add functions to clear dynamic backends * Fix the error when dynamic backend is not deregistered * Add DYARMNN_DYNAMIC_BACKEND_ENABLED to check disable empty dynamic backend when dynamic backend is enabled Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I1ef3a3f10ed6ca5ec18d0af04b007fc3bc71a3cb