Age | Commit message (Collapse) | Author |
|
* Added new ARMNN_STUB_PROFILING and ARMNN_DISABLE_DYNAMIC_BACKEND
defines to replace BUILD_BARE_METAL and BUILD_EXECUTE_NETWORK_STATIC
* Add new CMake variables to disable sample apps and dynamic backends
* Improve BUILD_SHARED_LIBS CMake variable
* Add new archive output location to various libraries so that the
static libraries appear in the same location as the shared libraries
* Fixes for bare metal build
* Add ARMNN_DISABLE_FILE_SYSTEM defines to missing locations
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: I1db9a8f483e7134bd261294b35240cf21b150d45
|
|
* Call dedicated MatMul kernel in ACL
* Add int8 tests
* Add int8 to documentation
* Force tensors to be dynamic (nonConst) as per request of ACL
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I7b7ac20deec8637dc46ca990d339d92c4587cbe4
|
|
* Call dedicated MatMul kernel in ACL
* Add int8 tests
* Add int8 to documentation
* Force tensors to be dynamic (nonConst) as per request of ACL
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I992ae9aae1174214607bf29305f21cdeaf3fdc1b
|
|
* The source and destination size checks in CopyTensorContentsGeneric are
handled by asserts instead of exceptions.
* Adding unit tests.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: Ia00c07158afde6768002dc6059067fd08e47fcff
|
|
NECast can use conversion instructions where they are available
so this should in general be faster.
Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com>
Change-Id: I3f259e17b280a4f4c36f363965ffbc8ee8c4c29f
|
|
Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com>
Change-Id: I501a3e01932d44eca796e93a9383378dafc758c5
|
|
* If the output shape is given in Transpose convolution, use it to calculate the padding
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I0bf3dee94c2ce606ed67fb385018b220188c3017
|
|
!android-nn-driver:9431
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
Change-Id: I58143445b5c5cf2aafd0838156c9543adce21e6a
|
|
* Reference workload
* TfLite Delegate
* TfLite Parser
* Serializer and Deserializer
* Changed fallback tests in delegate to use COS instead of CEIL
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I36e0dbff33694182d1dba0c95d463506428e2f04
|
|
* Arm NN does not account for int8 or uint8 not quantized types, Tensorflow does.
Not quantized int8 and uint8 is the same as quantized int8 and uint8 with scale = 1.0 and offset= 0
Default offset/zero_point was already 0, this review sets the default scale to 1.0.
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ibc3eecc281de516c2cc706e17bde01c64ff9556e
|
|
Signed-off-by: John Mcloughlin <john.mcloughlin@arm.com>
Change-Id: I6ce034d71f83765a9db65ab8f95e0b391dd8a9e4
|
|
Signed-off-by: John Mcloughlin <john.mcloughlin@arm.com>
Change-Id: Id4bdc31e3e6f18ccaef232c29a2d2825c915b21c
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I902c9187eefe7595271312fdc16273f7aa3d41cd
|
|
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I5d2fe903bab128e4fc84a8239ba5621f79572fe8
|
|
* Added required includes if ARMNN_LEAK_CHECKING_ENABLED.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I18bde66e8a1e19690747d7e05d10dbe0cedb1c1b
|
|
* Added ARMNN_NO_DEPRECATE_WARN_ to test files for Tosa and DynamicSample.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I2f1b771d719cf637e17cc423cd2211db9643a6e8
|
|
* Resolves MLCE-1040
Change-Id: I32878ed70af356832403e83dcb63b0b89a8a84e3
Signed-off-by: Pablo Marquez Tello <pablo.tello@arm.com>
|
|
* Fixed broken steps in BuildGuideAndroidNDK.md
* Fixed broken links in BuildGuideAndroidNDK.md
* Removed unneeded steps from BuildGuideAndroidNDK.md
* Added instructions for building the tflite parser and delegate for
android
* Fixed errors in CMakeLists.txt that made it impossible to build without
Neon or Ref.
* Added build_android_ndk_guide.sh, a shell script that contains the same
steps as BuildGuideAndroidNDK.md
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: Ie0479d3a2e4a776e7de88017b222d35a48c1fe10
|
|
Remove deprecated GetGraph() from OptimizationViews. This method has
been deprecated for a long time and no backends still need it. Remove
include of Graph.hpp from the public headers.
Add includes elsewhere to deal with the header fallout.
Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
Change-Id: I8dae275a8a446d9d0e19be62684e9b3cd2fa493d
|
|
* Added Deprecation notices for old ElementwiseBinary layers.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I5bd0f186aaed675885d667f47e1e210ee9ec84f8
|
|
This reverts commit 52e90bf59ecbe90d33368d8fc1fd120f07658aaf.
Change-Id: I5a0d244593d8e760ee7ba0c9d38c02377e1bdc24
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I74a93b1e2e5c9f12ce4523df3f21e5c0967fddfb
|
|
* Added Deprecation notices for old ElementwiseBinary layers.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: Iebbbaff38cc9c347b25eb2f9054c914a4f931c68
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I3ccfc2a4c95c57743927fb276faa756740f5c55a
|
|
!android-nn-driver:9329
* Added ElementwiseBinaryLayer that can represent all ElementwiseBinary
operations including Add, Div, Sub, Maximum, Mul and Minimum.
* Updated Delegate to use ElementwiseBinaryLayer instead of the Add,
Div, Sub, Maximum, Mul and Minimum layers.
* Updated Deserializer to use ElementwiseBinaryLayer instead of the Add,
Div, Sub, Maximum, Mul and Minimum layers.
* Updated OnnxParser to use ElementwiseBinaryLayer instead of the Add
layer.
* Updated TfLiteParser to use ElementwiseBinaryLayer instead of the Add,
Div, Sub, Maximum, Mul and Minimum layers.
* Updated CL and Neon tests to use ElementwiseBinaryLayer.
* Updated CL and Neon Backend Specific Optimizations to accept
ElementBinaryLayers as well as Add, Div, Mul, Sub, Maximum and Minimum
layers.
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I7cbb96b60eb01f0e2b57b0541016d48a08b86c75
|
|
This makes it easier to use, particularly in backends where it
is common to pass around const pointers to IConnectableLayer.
The non-constant version is rewritten to use the constant version.
Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
Change-Id: Id3a8384447e93c213299a85ade9a667df5960534
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I4f5016841c31b183440f31c1e177bc41d2b8dbb7
|
|
We currently check that output_shape is an input for transpose conv2d.
If that is an input, we assume that it is constant and attempt to copy
the data into the descriptor. When this data is not constant and instead
comes from the output of another layer we segfault. When not constant
we will use infer output shapes.
* Adds a check into ParseTransposeConv2d that inputs[0] is constant
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: I01176ae22974767a2306a3db749a029ed220d88b
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I8d65673580924907db51d903d9054d1b0914493c
|
|
Previously we were adding a reshape layer to "broadcast" tensors
for elementwise operations. This broadcast was happening too late
and was really just an expand dims. This was breaking the constant
attributes of tensors and layer support of certain backends.
* Remove addition of reshape layer when expanding dimensions
* Replace broadcast function with expand dims to equal rank function
* Fix some error status checks in various layers
* Add new TensorUtil function that expands dims to a defined rank
* Add unit tests to new TensorUtil function
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: I31aca47c98075fef4f86864a15470f5faa55ab8d
|
|
the shape of the network
* Fixed bug where calculated output shape wasn't being recorded in ParseSqueeze.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I8f03a0400323c865e7e8f924d257d6770f809502
|
|
* Added reshape before and after FullyConnected to support dimensions
> 2. This is now consistent with the Delegate and TfLiteParser.
* Refactored AddFullyConnected method to remove duplicate code.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I04dfeb38dbcac096c5fcd9dcb5e3821d38ce6550
|
|
* The test cases that use DebugTestImpl were creating temporary files
but not cleaning them up after running.
* Refactored FileSystem to extract a common RemoveDirectoryAndContents
function.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I35b8d2eeed286742358a9abccbc078493d033902
|
|
* Only update boundary slots on actual subgraphview
* Previously all slots from replacement subgraph added even if internal
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
Change-Id: Ic9ef9fc41ad248838d1c019dd0368378c3119648
|
|
* Updated headers that were missing a copyright notice.
* Reverted years that were incorrectly updated.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I65842f1e9b9fd5654563edd5090133cb3c89fecc
|
|
* TFLite Parser:
* Fixed issue in ParseReshape where the targetShape wasn't always calculated correctly
* Fixed issue in ParseFullyConnected where the wrong name was used for the ReshapeLayer
* Added an ExpandDims to the FullyConnected to ensure that we reshape the output correctly
* TFLite Delegate:
* Added an ExpandDims to the FullyConnected to ensure that we reshape the output correctly
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I129dfcb8543f8a3a297c0589c841be20ef3b6407
|
|
* Added ability to reduce dimension sizes when calling BuildArmComputeTensorInfo or
BuildArmComputeTensorShapes, this will attempt to remove leading 1s in order to
squeeze the number of dimensions but retain the size.
* Changed ClBatchMatMulWorkload to attempt to squeeze the number of dimensions to 3
as the CL Gemm Kernel can only support up to 3 dimensions.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I6b3d0886c5b97fdb686838fc3dc292833ddc4643
|
|
* Fixed issue where ComparisonLayer wasn't calculating its output shape correctly.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I37fe437b598bde694e519d6792182924bd0197cd
|
|
* The only way to build TOSA common was to enable ARMNNTOSAREF.
* Only include and link the required headers/libraries for TOSA Common.
* Remove duplicate include_directories calls.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Ia5a19bf5b0bb903be0248ac550439df1e8ac5aa7
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Iaa3cff46217117aefdb92f281e9da2b0315f3af9
|
|
* Folding of pad into conv2d expected a Constant layer not Dequantisation
* Fusing Dequantisation with Constant to a Constant ensures that.
* Group Constant layer optimizations together where possible.
* Add unit test.
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: Id0393313bf097595f2f13738b7513e427116ea4a
|
|
The -F execute network option creates a directory to print intermediate
tensors but minor problems caused serious failures. This attempts
to clean up the error handling.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: Ia44c008919b1bee299b43a672235b1fcc25bf1bd
|
|
* Some code was moved to aclcommon to facilitate GpuFsa. It causes
build problems when ACL is build without CL support.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: Ia49d1fb7e69aaa8a694f402968e9ae689c2a874c
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I60e9284b90467f58e0acd74d3f1493546b6f1b9b
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Iefe255ed27e1f69d99dc0cae9cfa1d6d1a51720e
|
|
* Added ElementwiseUnary support with a mapping for Rsqrt
* Added unittests
* Added Rsqrt EndtoEnd tests for all backends
* Changed TosaRefLayerSupport to default to false on unsupported layers
Signed-off-by: David Monahan <david.monahan@arm.com>
Change-Id: I3eaa9c684647ead61520a563815581aa68bee51b
|
|
* Call Reshape EndToEnd test from 3 backends
* Tidy up some naming of tests.
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I5546af35e89d352d3f1529368518aecc0a4a534b
|
|
* Added ability to calculate dynamic tensors and propagate
them through the model so that when those tensors are later
used as inputs they have the right shapes.
* Added InferOutputShapes to DetectionPostProcessLayer.
* Added InferOutputShapes to MeanLayer.
* Added InferOutputShapes to RankLayer.
* Added InferOutputShapes to ReduceLayer.
* Fixed typos in TfLiteParser.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I880c0716938ef278f5dbf01a8a73a5cc99ce5ded
|
|
* API to remove need for workaround so backend users can get slots
* OutputSlots outside the SubgraphView needed to obtain TensorInfo
* Fix a few Copyright headers
* Add shared_ptr back to original subgraph view using
std::enable_shared_from_this
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I033a00d6fc4020619d406ac06a156b7e380a426a
|
|
* Required to enable easier future merging and rebase into experimental/GpuFsa
as part of IVGCVSW-7380.
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I066dcf00523ff430a0908666e452548ab848bd86
|