Age | Commit message (Collapse) | Author |
|
OptimizationViews::GetINetwork()
* Also provide API to return reference via GetINetworkRef().
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I80f4912cb7e22a2023e9bb880182ad4610c219e9
|
|
* Build ExecNet lib dependencies as object libs except libarmnn
* Disable PIPE when building static ExecNet
* Remove multiple definition from AsyncExecutionCallback
* Disable DynamicBackend for ExecNet Static build
* Disable inference tests for TfLiteParser and ONNX during static ExecNet
* Remove Tensorflow Parser if condition
* Add Disable thread macro to InferenceModel
* Don't compile dynamic backend symbols in Runtime.cpp for Baremetal and
Exenet Static
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: If41c063eab5f05b3df0a6e064924a36a177f116a
|
|
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: Ib148daf81700d9038d6e91a35c9c17e770c26e84
|
|
* Fixed bug when converting Constants with Per-Axis Quantization
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: Ifbea23e60483746ec987da491dae96e74cb33af4
|
|
This reverts commit 21cf67af47a9cebbc10a98184c204fffa3722abd.
Reason for revert: IVGCVSW-7397 Segmentation fault/Bus error in Backends CI job nightly
Change-Id: I563e79700a857f8cf0fce0923a7040aeda29629b
|
|
* This fixes the build failure happening in nightly job running
Arm NN and EthosN main branches
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: I2b1f861fdfef2b6025dfdcc0725b00c82fac13a8
|
|
android-nn-driver.
* Not a concern with the delegate/parser as tflite builtin operators have
little float16 support
* Will also fix float16 workloads running on the support_library.
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: Iec2033dbc8ece2140b188de1f193c344a68b9c36
|
|
* Added CreateNetworkFromBinary to the ONNX parser
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I5ca72ee49c7b098f9fb4aaf55a8bc077230cb30e
|
|
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I11505f672349e1f04143edfdc2df8775f685372d
|
|
IsLayerSupported()."
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I7fa4110a1b545c1fcd79e387d53ae7d6cd381f31
|
|
TOSA Reference Backend
* Removed AdditionOperator and moved to new ElementwiseBinaryOperator.
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I8ce20f7575d68334aadcd176827bca3db53d0052
|
|
Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
Change-Id: Ia7d714eb227a96ad9eeb1441afbc83e6ad2bb197
|
|
Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
Change-Id: I54d4a017e5f2d0bbeb742b6a33121e9ca5327f47
|
|
* .o files were being installed by cmake.
Change-Id: Ie2056e09b4800fe208d784a90f3908d508b8cadf
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
|
|
* Change comment for the unique tensor names in all tosa common operators
Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: I247b4b2365d5f0173218c5dfd11fba12d2399959
|
|
* alphabetical order,
* specify floats
* fix order of parameters in convolution operator
* fix uninitiated variable in ConvertConstantTensorDataToBuffer
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ic82e6127cac6b94da4c859a284893b838ab248bc
|
|
This makes it possible to call Import on an Allocated() or memory-managed Tensor,
which is needed for the current implementation of OptimizerOptions::m_ExportEnabled
to work (as the last layer before the OutputLayer needs to be able to Import the
user's OutputTensor, but this is done after other memory allocation).
Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
Change-Id: I1a885c2da7b1f0f3964ae53b8135b5e96a66614f
|
|
* Fixed issue where duplicate tensors where being created.
* Fixed issue where output name could be generated with the wrong id.
* Updated bias tensor for Conv2d, so the size matches the channel.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I1de6947e036b3e629ec6446d24d69e50603a5593
|
|
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I9bfd597afd41468f304edfbe5d7141378ce60d4f
|
|
* Replace current IsLayerSupported checks with ModelRunner for
better validation.
* Added options to be able to disable the output from the
TOSA Reference Model during layer support.
* Updated layer support tests to reflect actual support.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Iaea17343d0ad51b495477024c44a34d9335d1438
|
|
Test was checking a freshly constructed BackendRegistry, rather
than the single instance.
Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
Change-Id: I7c64cf089cb406ac4e5ceefedb17163f39801b07
|
|
The import flags for a RefTensorHandle shouldn't be a data member,
as RefTensorHandle can only import from MemorySource::Malloc. Instead,
use m_ImportEnabled to determine what to return from GetImportFlags().
Simplifies the code in Import and CanBeImported.
Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
Change-Id: Ic629858920f7dd32f99ee27f150b81d8b67144cf
|
|
* Error thrown when building in CLion
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I533f11e7ce2d883e254472097fee3817584d2f49
|
|
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I8be286b69bebd4cd36033e3145632bb043938d16
|
|
* Required for building within the IDE.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: Icbf1b7e24cc20f579bcb6f8d82666ed480378dd4
|
|
* Spelling corrections and code refactors added to TosaCommon
* TosaDTypeToString() implemented and used in TosaRef IsLayerSupported()
instead of enum integer.
* Using namespace armnn in TosaCommon OneToOneMappingTests and
TosaReference TosaRefLayerSupportTests instead of armnn::ClassName.
* Updated VerifyTosaAttribute() to also verify certain attributes
from input and output shapes.
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I71dfca404d081a665f748ab724153c6dc36b7eca
|
|
* Removed weights and bias from Convolution, DepthwiseConv & FullyConnected
layers
* Removed the weight and bias ConstTensorHandles from the QueueDescriptors
* Updated Workloads to take tensors from WorkloadInfo rather than the
QueueDescriptors
* Removed unused RedirectMembersToConstantInputs optimization and tests.
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I9ffcdc4a1c0dff725539dd69fc435b700bd98a56
|
|
* Done as part of 22.11/23.02 innovation days.
* IsLayerSupported() is called in model prepare (delegate, android-nn-driver and shim/support_library)
and again in ArmNN once model otimization is performed.
* From calling IsLayerSupported() the first time, we should know that the layers are supported
and what backend they are supported on.
* Solution is to set the BackendId of the IConnectableLayer when IsLayerSupported() is called the first time,
* In the Optimize() function we then check if the backend is set. If so, we do not call IsLayerSupported() again.
* In the case a layer that is supported gets optimized, then the BackendId of that layer get set to "Unknown"
for the new optimized layer and IsLayerSupported() will get called on the newly optimized layer.
* Includes bug fix IVGCVSW-7213 for Android Mean FP16 CpuAcc tests. Also related to bug IVGCVSW-7211.
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I7a7820d0cdb079ffb5a3a2e0c44e252f652df53b
|
|
This tool forces explicit includes of all dependencies and
highlights unused dependencies.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I92e449245246452a0227cbd13f9c082e2088bf8c
|
|
* Added TOSA Conv2d and Constant mappings.
* Added unique naming to mappings based on previous and following
layers, so they are connected correctly.
* Updated existing mappings with new naming convention.
* Added all mappings to one main block in OptimizeSubgraphView.
* Removed isMain from mapping functions.
* Added Conv2d EndToEnd test.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I27c3e238407c32379ce25a1f01dad11523ef5d2b
|
|
* Some pemutation vectors were not converted correctly.
* Add Transpose end to end test.
* Comments added with an example to clarify the differences betweeen
Transpose and Permute
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I6c0954ca6ce00ef5f2a6f3625abe6f4fd27b5cdf
|
|
In several cases the address of a single float value on the stack was
passed as a pointer to the constructor of ScopedTensor (which needs
a backing-store of size equal to GetNumBytes()).
Replace by using a std::vector to explicitly create and initialize
the right number of elements.
Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
Change-Id: I8a1f4bf169bd89983f2d68047173ec901a21e1fb
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I01de14cd46fe614dfcb11b2b4f9323f32e01ee9d
|
|
different to 0
!android-nn-driver:8727
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I4336007ad5a8552f7893ce6253f93cf9d1f5474f
|
|
* Float values which cannot fit in Half are converted as inf/-inf
* Add an InvalidArgumentException for infinity displaying the
value and data type
Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: Iaa5671374364c531e29e37fdfe40732b4fdbcfcb
|
|
one works fine
* Each CLBackend created its own ClContextControlWrapper which invalidated
the OpenCL context's from all CLBackends that were created before that one.
* Now CLBackends will keep a shared_ptr to a ClContextControlWrapper which
more closely matches the functionality within ACL.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I0744c2cb6a2f0d6b0c5fa54d786f88cf97775559
|
|
* Extended deprecation time of SubgraphView interface to 23.08
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: Ic0a729ea31402f0b39724da47212ae5cc04465c4
|
|
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I90d800160b070e25d999b5102a7ce6d3e0ed6a81
|
|
* Moving from other build guides which are being
removed and/or consolidated. Provides steps on
how to build the standalone backend unit tests
using the build-tool.
Signed-off-by: James Conroy <james.conroy@arm.com>
Change-Id: I3994bffc9038632ab7271ac31db25a38157f2bb7
|
|
- Remove Bf16ToFp32 Conversion Layer
- Remove Fp32ToBf16 Conversion Layer
- Remove B16 Conversion tests
* Throw exception if m_ReduceFp32ToBf16 optimzer option is set to true
* Provide comments to enable fast math in order to use bf16
* Update docs to inform users to enable fast math for bf16
Execute Network Changes
* Require bf16_turbo_mode to also have fast_math_enabled set to true
- Remove setting m_ReduceFp32ToBf16 optimizer option
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: Ibaa6da9d29c96a1ce32ff5196b0847fde9f04a1c
|
|
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I73a47e513fe2d064ef233b121a68ef2edf0396dc
|
|
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I17823fb8b6bbabc4da327187167ce9582ee29b32
|
|
* Added all data types to TosaRefPreCompiledWorkload::Execute().
* Generalised IsTosaLayerSupported and fixed Addition support.
* Added Fp16 and Int32 Addition End to End tests.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I1f89c310ede33615427343e89bcec7e7bb643fa1
|
|
* Create Simple Addition EndtoEnd test
* Create EndToEndTest file in TosaRef/test directory
* Add AdditionEndToEnd test to CpuRef,CpuAcc,GpuAcc,TosaRef
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: Ic44e2b457c25dcb41bb3b17c05cce0e74bf17a80
|
|
* Added FP32 support for TOSA Reference Backend.
* Added main block creation to OptimizeSubgraphView, this will only
occur once.
Change-Id: I169dac50b78e2c693da6327962c9f1d3ae3bd712
Signed-off-by: James Conroy <james.conroy@arm.com>
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
|
|
* Added TosaRefBackend::OptimizeSubgraphView implementation.
* Generalised TosaRefLayerSupport::IsLayerSupported to work with any
operator.
* Changed TosaCommon.hpp utils to inline functions.
* Added source files for TosaMappings.hpp and AdditionOperator.hpp.
* Fixed multiple defines issue with HALF_ROUND_STYLE and
HALF_ROUND_TIES_TO_EVEN.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Ib2576ec3fb97faa3a2256b2fb93ec16ac8745760
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I6a541db9a602609282cc6f33af930ca141b83c41
|
|
* In TF what ArmNN calls quantized data types can be non-quantized as well.
* This patch creates 2 models:
* ArmNN: model where int8 and uint8 will always be quantized, but scale can be 1 and offset 0
* TFLite: model where int8 and uint8 can be quantized and non-quantized
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Id960f2f30988f2bbec88cb4e0c52c189ac957bae
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I2def6995f81d33e68f1ea45d8d19a1e6294049b1
|
|
* half.hpp is now required as an include for numpy_utils.h
* DType_FLOAT was changed to DType_FP32.
* DType_FP16 support has been added to ArmNNToDType utility function.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Ib25be9a5abfbd9db2a90b3e42d592259a6df0e01
|