Age | Commit message (Collapse) | Author |
|
* 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
|
|
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Ie9aa1aa20a5bc837e005a7a36d4d07b4cd8d021b
|
|
* Modify get_tensorflow.sh to point to the 2.10 Tensorflow tag.
* Modify FindTfLite.cmake to handle the break up of libruy.a
* Modify armnn_delegate.cpp to add registration_external field.
* Prevent the serializer/deserializer from using a system installed
version of flatc.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I688f33f387924ba29bf400f60e56f73b2329fdc1
|
|
* Bug fix where files were being overwritten at each debug layer
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: I609fdc82afcee925824efb02183c7dbc942fced0
|
|
* Add functionality to print output tensors to file in tempdir
* UnitTests
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: Idfb4c186544187db1fecdfca11c662540f645439
|
|
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
Change-Id: I3573078206272c3a72a2b3acf8781ab458ea6c90
|
|
* Some CL kernels are not run after the first inference and this breaks
the profiler which is expecting a measurement for every kernel each run
* Add a function HasKernelMeasurements() to ascertain if the Event is
returning kernel measurements and if so insert 0.0 values for any missing
kernel measurements.
* Fix ExecuteNetwork to only print a json object after all inferences
have completed
Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: I99f2bb0db847f5a52ab4c5705b072155c6b6f333
|
|
* Asserts are removed during a release build, which causes build
failures due to unused variables.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Ie36f2bd22f5b2916b03ba7e64c1895fdf21f11f0
|
|
* Fix for Debug mode in ExNet does not work with ConstTensorsAsInputs
* Remove unnecessary assertion with ambiguous message in LoadedNetwork
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: I9cd5d1f811dbbc89072d1190c510bf1b22e3069c
|
|
* This affects only to the layers (not workloads) Conv, DWConv and FC
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I66a91ed1a78bc0464e00423c7fc7c28c91d199ce
|
|
param contains a value of -1.
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I538347083e9f22b3f3b6c048aebc2cf5cf4dc786
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I1bc3d50b8fa6e216d8b6b7e3421d2ff37a21712c
|
|
* Add a breakdown of the runtime options to the documentation.
* Exclude test classes from Doxygen generation.
* Limit the file extension selection for Doxygen generation.
* Add the support library to be generated.
* Fix some broken markups.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I81896f2d7fff503a1d51d6d4ac3876aa8b84118e
|
|
buffer data for Slice operator.
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I86735faf8d57168a63ca6657f281ec03b90f7235
|
|
The subgraphs produced by SubgraphViewSelector were not produced in a
deterministic order, as the order was determined by the pointer values
of some objects, which are not guaranteed to be the same for each
execution.
This patch adds a post-processing sorting step based on the GUIDs of the
layers and the slot indices so that the results will be the same for
each execution.
This makes debugging the optimised graph much easier as subsequent
stages can also be deterministic. It also simplifies some unit tests.
Change-Id: I64f552706b7fb1bf82c19d85a448e054277917bc
Signed-off-by: Rob Hughes <robert.hughes@arm.com>
|
|
* Added files based on RefBackend
* Added PreCompiled Workload skeleton
* Increment ABI version of armnnTestUtils for CreateInput which had
been left as pure virtual, added base implementation for it.
* Add IsTosaLayerSupported() for Addition
Change-Id: I4c963adf3f50593d17ecdf21554502a64ad3bd76
|
|
* Files deleted when Stabilizing the API
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I0ae73ee36968fa880761c10358bfa827be5fe054
|
|
overridden
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: If594e291951a5f9ed1957a19a971c498f6e7843f
|
|
* AddConv and AddDWConv with weights and bias
* ResizeBilinearDescriptor
* b,blacklist option in accuracy tool
!android-nn-driver:8172
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ibbc04fd18be7f938b11590bf67cd7af103cb4d99
|
|
* Added armnnTfLiteParser for BatchMatMul
* Added unit testing for parser
* Updated CMakeLists
Signed-off-by: Samuel Yap <samuel.yap@arm.com>
Change-Id: If6842aaf7cf08f688093b714e2ecea6e8cd87161
|