platform/upstream/armnn.git
4 years agoMake it build on MACOSX
Jim Flynn [Tue, 14 Jul 2020 13:26:27 +0000 (14:26 +0100)]
Make it build on MACOSX

Still need to explicitly defined
-DCMAKE_CXX_FLAGS=--std=c++14
which that flags should goes into CMakefile.txt

JF: Fixed merge failure by removing Filesystem.cpp
    and updated the copyright headers to new standard

Change-Id: I6d0886bd86bc1ddb593028194852551d43c77745
Signed-off-by: Keith Mok <ek9852@gmail.com>
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
4 years agoIVGCVSW-4847, Github #393 Fix TfLite reshape operator
Jan Eilers [Mon, 13 Jul 2020 12:40:24 +0000 (13:40 +0100)]
IVGCVSW-4847, Github #393 Fix TfLite reshape operator

 * Change order of reading target shape. Checks built-in option first
   then input.

Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: Iddc39188ebfb7f71e33c35847de7506a02d807af

4 years agoFixing compile error on Ubuntu 16.04
Colm Donelan [Mon, 13 Jul 2020 19:23:58 +0000 (20:23 +0100)]
Fixing compile error on Ubuntu 16.04

* gcc-arm-linux-gnueabihf/xenial,now 4:5.3.1-1ubuntu1 amd64 complains
  about error: array must be initialized with a brace-enclosed initializer
  in include/armnn/Tensor.hpp:122:81.

Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Change-Id: Ib8f72bbcf86586a704a0e98c5ba07fefdf5665a8

4 years agoIVGCVSW-5076 Correct Profiling Stream Metadata packet revision table
Jim Flynn [Thu, 9 Jul 2020 12:48:16 +0000 (13:48 +0100)]
IVGCVSW-5076 Correct Profiling Stream Metadata packet revision table

Change-Id: Ic3f8637642d3f3a5925f5b82e3729b3b654a7f3e
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
4 years agoIVGCVSW-5078 Fix segmentation fault on Yolo V3 Big App
Narumol Prangnawarat [Fri, 10 Jul 2020 16:50:53 +0000 (17:50 +0100)]
IVGCVSW-5078 Fix segmentation fault on Yolo V3 Big App

 * Register TensorHandleFactories when create Workload Factory

Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: I6217c6f00d27b67e42b8043cbaf72d9db5789bfb

4 years agoIVGCVSW-4929 Implement ShapeInferenceMethod in all Layers
Finn Williams [Fri, 3 Jul 2020 09:12:03 +0000 (10:12 +0100)]
IVGCVSW-4929 Implement ShapeInferenceMethod in all Layers

Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: I2c2d99f97cf89814140b057a9f93f41b364197f5

4 years agoRemove unnecessary header file
David Monahan [Fri, 10 Jul 2020 15:54:58 +0000 (16:54 +0100)]
Remove unnecessary header file

Signed-off-by: David Monahan <david.monahan@arm.com>
Change-Id: I4444fa485bf47c4caf133505927699507c4eb306

4 years agoGithub #388 Remove TfLite Concat quant validation
James Conroy [Fri, 10 Jul 2020 12:01:01 +0000 (13:01 +0100)]
Github #388 Remove TfLite Concat quant validation

* Matching quant validation was added to TfLite
  parser as per TfLite documentation.
* Removing this validation for Concat and Pad as
  it is causing some nightly model test failures.

Signed-off-by: James Conroy <james.conroy@arm.com>
Change-Id: Ie128fb66cc2d4a193ac22dc9eb41f5703d113663

4 years agoIVGCVSW-5095 Make timeline report the Linux Thread ID not the pthread ID
Jim Flynn [Thu, 9 Jul 2020 06:28:37 +0000 (07:28 +0100)]
IVGCVSW-5095 Make timeline report the Linux Thread ID not the pthread ID

Change-Id: Id69519fd9ef57716de4e389ed4156710a904c701
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
4 years agoUpdate ACL pin to 6b6a16faa9375365d444b2a3998381b22cd6cd5b
Nikhil Raj [Thu, 9 Jul 2020 10:19:53 +0000 (11:19 +0100)]
Update ACL pin to 6b6a16faa9375365d444b2a3998381b22cd6cd5b

Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: I8c4c1b397a7537605bb7f9f7471e407e4b21ffe0

4 years agoIVGCVSW-4487 Remove boot/dll.hpp from dynamic backends test.
Colm Donelan [Sun, 28 Jun 2020 07:16:46 +0000 (08:16 +0100)]
IVGCVSW-4487 Remove boot/dll.hpp from dynamic backends test.

* Replace the call to boost::dll::program_location() with a cmake
  variable set at runtime. PROJECT_BINARY_DIR appears to fit the bill.
* Fall back to a boost custom CLI to allow it to be user specified.
* Add a FAQ entry describing potential problems.
* Adding flexibility to GetSharedObjectsTestImpl to cope with
  sym links in file systems.

Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Change-Id: Iccf3f1b0f2911101e1f61bffd73cefba271bbfe2

4 years agoGitHub #388 Add matching quant checks in TfLite parser
James Conroy [Wed, 24 Jun 2020 14:39:55 +0000 (15:39 +0100)]
GitHub #388 Add matching quant checks in TfLite parser

* Adds checks for matching tensor quantization info
  as per TfLite documentation.
* Adds missing layer nullptr assert checks.

Signed-off-by: James Conroy <james.conroy@arm.com>
Change-Id: I4344a3554e349ce8edcd14126f63bc627637e0cd

4 years agoIVGCVSW-5005 Fix Deprecated Functions in CL/NEON Resize Workload
David Monahan [Tue, 30 Jun 2020 14:57:56 +0000 (15:57 +0100)]
IVGCVSW-5005 Fix Deprecated Functions in CL/NEON Resize Workload

 * Update CL pin to f3ad9513dd46fca1d6c5e4550286480fdbaba056

IVGCVSW-5005: Fix Deprecated Functions in CL/NEON Resize Workload
 * Add missing virtual function to NeonIntercepterScheduler
 * Update CL/Neon Resize Workloads to use ScaleKernelInfo
 * Update CL/Neon Resize workloads to set correct Sampling Policy for Half Pixels

IVGCVSW-4981: Change CL/NEON Softmax axis value
 * Default value is now 0

Signed-off-by: David Monahan <david.monahan@arm.com>
Change-Id: I8a14c6a64e5a24bc1a66a7d3685cd388c2245702

4 years agoIVGCVSW-5087 NNT zero sized failing after TensorShape refactor
Teresa Charlin [Wed, 8 Jul 2020 10:12:47 +0000 (11:12 +0100)]
IVGCVSW-5087 NNT zero sized failing after TensorShape refactor

Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I71bf28aae86766db8777b011c769b547436e7d39

4 years agoRemove new occurence of boost::polymorphic_downcast
Jan Eilers [Wed, 1 Jul 2020 15:35:35 +0000 (16:35 +0100)]
Remove new occurence of boost::polymorphic_downcast

Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: Id9446c30f6a31c5064bab08b40805e463700072c

4 years agoIVGCVSW-4624 Add a RANK Reference Implementation
Finn Williams [Wed, 10 Jun 2020 14:53:46 +0000 (15:53 +0100)]
IVGCVSW-4624 Add a RANK Reference Implementation

 * Add Rank front end
 * Add Rank reference implementation
 * Add Rank serialization support
 * Add Scalar serialization support

Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: I06e4a468c2a84e79bae2e6c5348596bbbf853b4b

4 years agoGitHub #418 AddBroadcastReshapeLayer can cause inputs to be connected incorrectly
Mike Kelly [Mon, 6 Jul 2020 18:24:15 +0000 (19:24 +0100)]
GitHub #418 AddBroadcastReshapeLayer can cause inputs to be connected incorrectly

 * Fixed issue where AddBroadcastReshapeLayer would always connect the Reshaped input to the first input slot and the other input to the first input slot.

Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: Ifd2745a819eb0f72ff9433690afc92a6a34f2ec3

4 years agoIVGCVSW-4770 Fix segmentation fault in FileOnlyProfilingDecoratorTests
Jan Eilers [Wed, 1 Jul 2020 17:09:39 +0000 (18:09 +0100)]
IVGCVSW-4770 Fix segmentation fault in FileOnlyProfilingDecoratorTests

Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: I5725aa418b50fc14ce4e6638fe29a74d762cc304

4 years agoIVGCVSW-4919 Strided Slice 0 Dimension Tensor Fix
Ryan OShea [Mon, 6 Jul 2020 10:45:50 +0000 (11:45 +0100)]
IVGCVSW-4919 Strided Slice 0 Dimension Tensor Fix

 * Add check Axis' shrunk to 0 dimensions

Signed-off-by: Ryan OShea <Ryan.OShea2@arm.com>
Change-Id: Ic2544f7538d2df4a561f88ce8909533424fa2a25

4 years agoIVGCVSW-4920 Invalid Negative Stride fix
Ryan OShea [Fri, 3 Jul 2020 10:40:12 +0000 (11:40 +0100)]
IVGCVSW-4920 Invalid Negative Stride fix

 * Add check for negative stride with ShrinkAxisMask

Signed-off-by: Ryan OShea <Ryan.OShea2@arm.com>
Change-Id: I69ecd2915d94278d6313d8279361c4dc675adb74

4 years agoIVGCVSW-4988 Add handling output shape parameter to TransposeConvolution2d
Colm Donelan [Fri, 3 Jul 2020 14:54:28 +0000 (15:54 +0100)]
IVGCVSW-4988 Add handling output shape parameter to TransposeConvolution2d

* Add m_OutputShape and m_OutputShapeEnabled to
  TransposeConvolution2dDescriptor.
* Update TfLite parser to populate m_OutputShape if found in the model.
  Handle both Signed32 from tflite files and QAsymmU8 from test fixtures.
* Update TransposeConvolution2dLayer to use m_OutputShape instead of
  InferOutputShapes if specified.

Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Change-Id: Ia6933065375eb8006c916f1ca67c38dc50bc205c

4 years agoIVGCVSW-5020 Refactor TensorShape to host dynamic tensors and scalar values
Teresa Charlin [Tue, 23 Jun 2020 17:30:57 +0000 (18:30 +0100)]
IVGCVSW-5020 Refactor TensorShape to host dynamic tensors and scalar values

Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I63f97fad080dbfeec6433c2548f0311173051a6a

4 years agoRefactor: Remove need of OutgoingCaptureFile in JSONTimelineDecoder
Jan Eilers [Wed, 1 Jul 2020 14:37:50 +0000 (15:37 +0100)]
Refactor: Remove need of OutgoingCaptureFile in JSONTimelineDecoder

 * moves ownership of the output file to caller of TimelineDecoder
 * by using ostream the output can be printed to std::cout or any other file stream
 * updated unit test accordingly

Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: Iaa8994e9997c674c1a026a65fcbd1ab8e3832d3e

4 years agoIVGCVSW-4903 Connect axis parameter in Gather from android to ACL.
Teresa Charlin [Mon, 29 Jun 2020 15:27:03 +0000 (16:27 +0100)]
IVGCVSW-4903 Connect axis parameter in Gather from android to ACL.

!android-nn-driver:3302

Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ifbc49acb5272f8a36719bb68676e44817190537d

4 years agoIVGCVSW-5007 Implement an Int32 reference Elementwise workload
Finn Williams [Mon, 22 Jun 2020 14:58:32 +0000 (15:58 +0100)]
IVGCVSW-5007 Implement an Int32 reference Elementwise workload

Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: I6592169b74ac4294bc09647879aec0718c641f91

4 years agoIVGCVSW-4487 Remove boost::filesystem
Francis Murtagh [Mon, 29 Jun 2020 10:50:01 +0000 (11:50 +0100)]
IVGCVSW-4487 Remove boost::filesystem

 * Replace filesystem::path
 * Replace filesystem::exists
 * Replace filesystem::is_directory
 * Replace filesystem::directory_iterator
 * Replace filesystem::filesystem_error exception
 * Replace filesystem::temp_directory_path
 * Replace filesystem::unique path
 * Replace filesystem::ofstream with std::ofstream
 * Replace filesystem::remove
 * Replace filesystem::is_regular_file
 * Replace boost::optional with armnn::Optional in touched files
 * Remove some superfluous includes
 * Update build guides, GlobalConfig.cmake and CMakeLists.txt
 * Remove redundant armnnUtils::Filesystem::Remove function.
 * Remove redundant armnnUtils::Filesystem::GetFileSize function.

Temporarily adding back Boost::filesystem to enable Boost::dll.

Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Change-Id: Ifa46d4a0097d2612ddacd8e9736c0b36e365fb11

4 years agoIVGCVSW-5036 Do not allocate memory when import is enabled
Narumol Prangnawarat [Fri, 26 Jun 2020 10:00:21 +0000 (11:00 +0100)]
IVGCVSW-5036 Do not allocate memory when import is enabled

Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: Ideaae5280702aae6c73f3b4e4cee9f71a8386fda

4 years agoIVGCVSW-5021 Fix failure in SplitV
Jan Eilers [Mon, 29 Jun 2020 15:48:44 +0000 (16:48 +0100)]
IVGCVSW-5021 Fix failure in SplitV

Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: I587f601d3e1b9ea11fbc3dc379f24c5ebdcf3cf8

4 years agoIVGCVSW-4171 Makes DumpOutgoingValidFileEndToEnd test work reliably
Jim Flynn [Wed, 24 Jun 2020 10:11:20 +0000 (11:11 +0100)]
IVGCVSW-4171 Makes DumpOutgoingValidFileEndToEnd test work reliably

Change-Id: I51f244467a7b562344f04b910fe5be5e2ec0e3dc
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
4 years agoIVGCVSW-4910 Productise YoloV3 Big App
Jan Eilers [Thu, 25 Jun 2020 12:18:47 +0000 (13:18 +0100)]
IVGCVSW-4910 Productise YoloV3 Big App

 * use cxxopts to process program arguments
 * remove hard coded paths for models
 * added options for preferred backends for each model

Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: I74a89577e15c4828e8b522bbf1f65f1895cdd657

4 years agoIVGCVSW-5049 Terminate Timeline Packet Processing on Error
Jim Flynn [Fri, 26 Jun 2020 12:52:38 +0000 (13:52 +0100)]
IVGCVSW-5049 Terminate Timeline Packet Processing on Error

Change-Id: I2a339da913f18f91734967de2b4a0baa9e2df19b
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
4 years agoIVGCVSW-4919 Mean VTS/NNT Failures
Ryan OShea [Fri, 26 Jun 2020 13:40:29 +0000 (14:40 +0100)]
IVGCVSW-4919 Mean VTS/NNT Failures

 * Allow output to be reduced to scalar

Signed-off-by: Ryan OShea <Ryan.OShea2@arm.com>
Change-Id: I3b5a392fe70a84814c523a22d6fe3cf19d74f83f

4 years agoIVGCVSW-4928 Introduce "ShapeInferenceMethod" Option.
Teresa Charlin [Tue, 9 Jun 2020 17:00:20 +0000 (18:00 +0100)]
IVGCVSW-4928 Introduce "ShapeInferenceMethod" Option.

Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I70ef1a9f3cefa1d4cf9220f0e13131d11e7c6418

4 years agoUpdate comment message on DynamicSample example
Narumol Prangnawarat [Thu, 25 Jun 2020 10:53:50 +0000 (11:53 +0100)]
Update comment message on DynamicSample example

Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: I7e67400d7cd2b83aa55320c0739c531625ed32be

4 years agoIVGCVSW-4982 Fix failure in GatordMockTests
Jan Eilers [Thu, 25 Jun 2020 11:00:38 +0000 (12:00 +0100)]
IVGCVSW-4982 Fix failure in GatordMockTests

Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: Idb073a71d9b7f9ad5430fcb67e40b793635ed892

4 years agoMinor improvement of inference profiling
Derek Lamberti [Fri, 19 Jun 2020 13:33:05 +0000 (14:33 +0100)]
Minor improvement of inference profiling

* Start inference profiling at the actual beginning
* Add profiling events for EnqueueInputs and EnqueueOutputs
* Add profiling event for working memory allocation
* Refactor Execute body to remove code duplication
* forward arguments to constructors rather than copy

Change-Id: Iacab85f0a02e88e2423885f86f97e4dba4037319
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
4 years agoIVGCVSW-4770 Fix Segmentation fault while building ArmNN
Jim Flynn [Wed, 24 Jun 2020 09:32:43 +0000 (10:32 +0100)]
IVGCVSW-4770 Fix Segmentation fault while building ArmNN

Change-Id: Ic88c1f12671a0add773a400c6f6880c35ff24a3e
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
4 years agoIVGCVSW-4621 Add CL FILL Workload
Sadik Armagan [Wed, 24 Jun 2020 10:42:20 +0000 (11:42 +0100)]
IVGCVSW-4621 Add CL FILL Workload

* Add CL workload for Fill Operator
* Enabled Fill operator tests on CL
* CLFill function does not have validate() function yet
  IsLayerSupported() function return true at the moment
* Enabled int32 to tests on backends

Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I9f8cc6d1c86f832ba46a8d170572f4cfcde9ab17

4 years agoIVGCVSW-4487 Adds ghc::filesystem to third-party
Jan Eilers [Tue, 23 Jun 2020 13:16:04 +0000 (14:16 +0100)]
IVGCVSW-4487 Adds ghc::filesystem to third-party

 * as replacement for boost::filesystem
 * added to cmake
 * added to TPIP in readme.md

Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: I0098e490e8597a9bae4781cacba8e19f8a50d1f0

4 years agoIVGCVSW-4622 Add NEON FILL Workload
Sadik Armagan [Tue, 23 Jun 2020 15:22:23 +0000 (16:22 +0100)]
IVGCVSW-4622 Add NEON FILL Workload

* Added Neon workload for Fill Operator
* Enabled Fill operator tests on Neon
* NEFill function does not have validate() function yet
  IsLayerSupported() function return true at the moment
* Added INT32 supported type for CpuRef

Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I17bf5ec13750f46322a30653e15ba2a514f61f08

4 years agoFix deserializer output binding tensorshape logic
Josh Minor [Wed, 17 Jun 2020 18:56:20 +0000 (13:56 -0500)]
Fix deserializer output binding tensorshape logic

Signed-off-by: Josh Minor <josh.minor@arm.com>
Change-Id: I090733fb7b04ac6841a802eeec0fa663f72da9a2

4 years agoIVGCVSW-4924 Fix edge case for transposeConv2d shape inference
Finn Williams [Fri, 19 Jun 2020 15:26:11 +0000 (16:26 +0100)]
IVGCVSW-4924 Fix edge case for transposeConv2d shape inference

Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: I0147ad10aeb16cf5c876cbf09434279ba6813714

4 years agoIVGCVSW-5022 Fix master intermittent failure by providing surge buffer capacity
Jim Flynn [Mon, 22 Jun 2020 19:41:43 +0000 (20:41 +0100)]
IVGCVSW-5022 Fix master intermittent failure by providing surge buffer capacity

Change-Id: I028aec48d89d7348836223029aa1e8c315f160fa
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
4 years agoRemove per-channel quantization support in ref fully connected
Jan Eilers [Mon, 15 Jun 2020 10:43:03 +0000 (11:43 +0100)]
Remove per-channel quantization support in ref fully connected

 * was added accidentally

Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: I332036ffd35868b0fe1226aba5522af3b91d25da

4 years agoIVGCVSW-4707 - Add AlignCorners and HalfPixelCenters to Resize
David Monahan [Fri, 19 Jun 2020 15:43:48 +0000 (16:43 +0100)]
IVGCVSW-4707 - Add AlignCorners and HalfPixelCenters to Resize

 * Added AlignCorners and HalfPixelCenters Parameters to Resize
 * Added Unit Tests

Signed-off-by: David Monahan <david.monahan@arm.com>
Change-Id: I83420a9bcb7beec9073d201448f64eb53090e1f1

4 years agoIVGCVSW-4488 Adding cxxopts to third-party
Jan Eilers [Fri, 19 Jun 2020 10:47:21 +0000 (11:47 +0100)]
IVGCVSW-4488 Adding cxxopts to third-party

 * as alternative for boost::program_options
 * added to cmake
 * added to TPIP list in readme.md

Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: Id8c6a12c988196cdac55650bc4761c08a39b3abb

4 years agoIVGCVSW-4909 Add Quantizer Support for FILL operator
Keith Davis [Thu, 4 Jun 2020 15:34:23 +0000 (16:34 +0100)]
IVGCVSW-4909 Add Quantizer Support for FILL operator

Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: I7ac9600b8956b4fb875f2f7efa061f8dac73d53c

4 years agoIVGCVSW-4908 Add Serializer/Deserializer Support for FILL operator
Keith Davis [Thu, 4 Jun 2020 15:34:23 +0000 (16:34 +0100)]
IVGCVSW-4908 Add Serializer/Deserializer Support for FILL operator

Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: Icae26505d0e378ee5ffb3e92b35d78d48b369d2e

4 years agoIVGCVSW-4900 Update Timeline Directory Message with new fields
Jim Flynn [Wed, 27 May 2020 16:05:21 +0000 (17:05 +0100)]
IVGCVSW-4900 Update Timeline Directory Message with new fields

Change-Id: I68097e176f7471a18498492b50339e68004dddd5
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
4 years agoRevert "IVGCVSW-3726 Upload ArmNN Doxygen files"
Jan Eilers [Tue, 16 Jun 2020 11:41:49 +0000 (12:41 +0100)]
Revert "IVGCVSW-3726 Upload ArmNN Doxygen files"

This reverts commit de36e4a9c299028e792c3a5bd99ad0816d806077.

Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: Idbf20c12ea07583ca552d7cc7fb517fbadc73fff

4 years agoMLCE-189 Adding more checks around dynamic backend directory paths.
Colm Donelan [Tue, 16 Jun 2020 16:14:51 +0000 (17:14 +0100)]
MLCE-189 Adding more checks around dynamic backend directory paths.

* It appears that the customer ends up with an invalid value of
  sharedObjectPath in GetBasePath. Inserting an explicit check for
  it.
* Also checking the final derived path for the value dynamic backend
  shared object.

Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Change-Id: I8bee4ea8ac2a6b8ad846b9c958731718669455d4

4 years agoUpdate ACL pin to 980a9168b81d778f4902973b4920b54c103907e0
Nikhil Raj [Tue, 16 Jun 2020 10:03:02 +0000 (11:03 +0100)]
Update ACL pin to 980a9168b81d778f4902973b4920b54c103907e0

Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: Id25eddb7505c30547798669c755fa4967e7b3754

4 years agoIVGCVSW-4620 Add Fill Reference Implementation
Ryan OShea [Wed, 10 Jun 2020 10:33:37 +0000 (11:33 +0100)]
IVGCVSW-4620 Add Fill Reference Implementation

 * Add Fill Reference Implementation
 * Refactor FP converter to use static_cast

Signed-off-by: Ryan OShea <Ryan.OShea2@arm.com>
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: I532e2f982981d047690755fac43a0e9cf8b17dcd

4 years agoCleaning up unit test GetProfilingGuidGenerator.
Colm Donelan [Thu, 11 Jun 2020 14:35:51 +0000 (15:35 +0100)]
Cleaning up unit test GetProfilingGuidGenerator.

* Removing duplicate check of backendProfilingIface
* Removing BOOST_CHECK(firstGuid) which appears to cause
  problems in v7 environments.

Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Change-Id: I0d605e9f42c6557270c12c3e33c0617e2b44ad0d

4 years agoIVGCVSW-4906 Add front-end support for FILL operator
Ryan OShea [Fri, 5 Jun 2020 16:17:06 +0000 (17:17 +0100)]
IVGCVSW-4906 Add front-end support for FILL operator

 * Added new fill layer
 * Added visitor tests

Signed-off-by: Ryan OShea <Ryan.OShea2@arm.com>
Change-Id: Iea677014866b4f2d514004623f59ee83f3c0eef8
Signed-off-by: Keith Davis <keith.davis@arm.com>
4 years agoIVGCVSW-4968 Fix exception handling in TfLiteParser.
Colm Donelan [Tue, 9 Jun 2020 15:56:25 +0000 (16:56 +0100)]
IVGCVSW-4968 Fix exception handling in TfLiteParser.

* The function TfLiteParser::CreateNetworkFromModel was continuing
  to parse the input file even after a fatal exception was encountered.
  restructure catch exceptions outside the for loop.
* Add simple unit tests to test some exception handling.

Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Change-Id: I202ca6819d40a47159b4ac8f2847958f945666c2

4 years agoIVGCVSW-4860 Add tests to verify QLstm projection
James Conroy [Mon, 8 Jun 2020 13:53:10 +0000 (14:53 +0100)]
IVGCVSW-4860 Add tests to verify QLstm projection

* Adds int16 output tensor to CpuRef impl to
  prevent overflow when accumulating output
  after projection.
* Adds two remaining tests to verify QLstm on
  CpuRef.

Signed-off-by: James Conroy <james.conroy@arm.com>
Change-Id: I93d7c64c4a9cc1012cb2bc052d598d4279fbd372

4 years agoIVGCVSW-4904 Refactor CpuRef PAD Workload
Sadik Armagan [Thu, 4 Jun 2020 09:32:18 +0000 (10:32 +0100)]
IVGCVSW-4904 Refactor CpuRef PAD Workload

* Refactored templated workload creation
* Added int8_t unit tests

Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I018b7f9f20496b5f9d7445901fe0d3dd04199cd0

4 years agoIVGCVSW-4923 Fix SampleDynamicBackendTests.
Colm Donelan [Thu, 4 Jun 2020 11:30:16 +0000 (12:30 +0100)]
IVGCVSW-4923 Fix SampleDynamicBackendTests.

* Remove the check introduced by IVGCVSW-4915.
* Check that SampleDynamic is loaded. If not output a detailed message.

Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Change-Id: Ib19b238418ea2d9c133e12bd540653ff0969ec5d

4 years agoIVGCVSW-4774 Fix resize descriptor member name change for Pyarmnn
Kevin May [Wed, 3 Jun 2020 15:05:00 +0000 (16:05 +0100)]
IVGCVSW-4774 Fix resize descriptor member name change for Pyarmnn

Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: I4e7c8341200d58ab8ae3c574ff622278d3938f95

4 years agoIVGCVSW-4915 Improving messages around SAMPLE_DYNAMIC_BACKEND_ENABLED
Colm Donelan [Wed, 3 Jun 2020 07:00:28 +0000 (08:00 +0100)]
IVGCVSW-4915 Improving messages around SAMPLE_DYNAMIC_BACKEND_ENABLED

* If SAMPLE_DYNAMIC_BACKEND_ENABLED is enabled but DYNAMIC_BACKEND_PATHS
  is not set then the user gets failing tests cases with no clear idea
  what has gone wrong. Explicitly failing when DYNAMIC_BACKEND_PATHS has
  not been set.
* Adding an FAQ entry describing how the user can get confused by our
  documented usage of CMake.

Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Change-Id: Ic11e14a971f53a6454962354ff728365ccc9de6d

4 years agoUpdate Acl pin to c26179810823bb36375111f4a5485a6475fc97c5
Kevin May [Wed, 3 Jun 2020 08:46:09 +0000 (09:46 +0100)]
Update Acl pin to c26179810823bb36375111f4a5485a6475fc97c5

* COMPMID-3363: Create ScaleKernelInfo

Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: I9162f0ec51d0d95dfad7e83d7d0b7f081d33acc9

4 years agoremove BOM from files
Laurent Carlier [Mon, 1 Jun 2020 08:03:17 +0000 (09:03 +0100)]
remove BOM from files

Change-Id: Ia4b4bb3be0ed6e933c77d58f8e9879b1370e9537
Signed-off-by: Laurent Carlier <laurent.carlier@arm.com>
4 years agoIVGCVSW-4190 Add SplitV to Tflite Parser
Ryan OShea [Tue, 26 May 2020 10:41:04 +0000 (11:41 +0100)]
IVGCVSW-4190 Add SplitV to Tflite Parser

 * Refactored SplitV
 * Added unit tests
 * Updated Documentation

Signed-off-by: Ryan OShea <Ryan.OShea2@arm.com>
Change-Id: If1dfa5a8780ddf3fe8788ed7bf7fa5fa8dfd14ec

4 years agoTidy up uses of Windows.h by adding WindowsWrapper.hpp
Rob Hughes [Wed, 20 May 2020 12:11:37 +0000 (13:11 +0100)]
Tidy up uses of Windows.h by adding WindowsWrapper.hpp

This header brings in the Win32 API header, with some small modifications
applied to prevent clashes with our code. This means those modifications
don't need to be made in each place that we bring in Windows.h

Change-Id: Ie817c7a167eccbe1ac6a49d3fc940eef8b2f534d
Signed-off-by: Robert Hughes <robert.hughes@arm.com>
4 years agoFix a few build warnings:
Rob Hughes [Wed, 20 May 2020 14:27:37 +0000 (15:27 +0100)]
Fix a few build warnings:

* Remove redundant asserts for unsigned ints being positive
* Remove unneeded include of lightweight_test.hpp header
* Remove unused exception variable names
* Replace hardcoded 0.0f with T() for some template functions
* Add a few static_casts

Change-Id: I290b0433cf995f6d0199422eaa10f816e5fd8eb9
Signed-off-by: Robert Hughes <robert.hughes@arm.com>
4 years agoIVGCVSW-4774 Add encoding flag for reading version
Kevin May [Tue, 2 Jun 2020 10:06:46 +0000 (11:06 +0100)]
IVGCVSW-4774 Add encoding flag for reading version

* Needed for testing with CI dockers which have POSIX locale

Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: I0e2805cdf665274217a6cd94a6c815478c2cb402

4 years agoIVGCVSW-3844 Add CL GATHER Workload
Teresa Charlin [Fri, 10 Apr 2020 21:34:48 +0000 (22:34 +0100)]
IVGCVSW-3844 Add CL GATHER Workload

Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I3d44c05acb40566cd4149417fca5bfd260f301e1

4 years agoIVGCVSW-4888 Update Resize Front end for new parameters
David Monahan [Sat, 30 May 2020 08:48:39 +0000 (09:48 +0100)]
IVGCVSW-4888 Update Resize Front end for new parameters

 * Added AlignCorners and HalfPixelCenters to Resize and ResizeBilinear
 * Updated Serializer and Serializer tests

!android-nn-driver:3280

Signed-off-by: David Monahan <david.monahan@arm.com>
Change-Id: Ice3bb448c239b04323854641525bfe0808c03b2e

4 years agoIVGCVSW-3846 Add NEON GATHER Workload
Teresa Charlin [Fri, 10 Apr 2020 18:24:55 +0000 (19:24 +0100)]
IVGCVSW-3846 Add NEON GATHER Workload

Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I1a66fdad63cef16866d9dfcb8a339647f856e1d4

4 years agoIVGCVSW-3847 Correction of 9349246cfce1cc3192aea8fb3a830506cf794abd
Teresa Charlin [Fri, 29 May 2020 15:47:23 +0000 (16:47 +0100)]
IVGCVSW-3847 Correction of 9349246cfce1cc3192aea8fb3a830506cf794abd

Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ia69ded99f753e278bc467492907f6a7ca92c7239

4 years agoIVGCVSW-3847 Support INT32 in Gather operator
Teresa Charlin [Fri, 29 May 2020 12:08:59 +0000 (13:08 +0100)]
IVGCVSW-3847 Support INT32 in Gather operator

Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ica217d3e4fbcdef1315554ea5d5c4720124696c3

4 years agoIVGCVSW-4801: Updating Doxygen project version for 20.05 release.
Colm Donelan [Fri, 29 May 2020 10:15:40 +0000 (11:15 +0100)]
IVGCVSW-4801: Updating Doxygen project version for 20.05 release.

Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Change-Id: I408a10610a5a91de4608b2597918445fcb5ee21c

4 years agoIVGCVSW-4735 Add label GUID to timeline eventClass message
Jim Flynn [Tue, 26 May 2020 20:10:49 +0000 (21:10 +0100)]
IVGCVSW-4735 Add label GUID to timeline eventClass message

Change-Id: Ie205d8146f5bb1920bf001b7623ead79e2ab9e48
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
4 years agoAdd NEG support to TFLite parser
Darshan Patel [Tue, 26 May 2020 16:52:42 +0000 (22:22 +0530)]
Add NEG support to TFLite parser

* Added unit tests
* Updated Documentation

Signed-off-by: Darshan Patel <darsh.jp@gmail.com>
Change-Id: Id22ffebe60732a93798f72801eb8a2a23cdd7ec0

4 years agoIVGCVSW-4200 Add CL EXP Workload
Sadik Armagan [Wed, 27 May 2020 12:40:58 +0000 (13:40 +0100)]
IVGCVSW-4200 Add CL EXP Workload
IVGCVSW-4203 Add Neon EXP Workload

* Added CL EXP operator workload
* Added EXP test suite
* Enabled EXP tests on ACL and Ref

Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I793d31af1b2e3fe86b0bec6d9e5de503c5dab970

4 years agoCatch exceptions by const reference
Pavel Macenauer [Tue, 26 May 2020 10:54:22 +0000 (10:54 +0000)]
Catch exceptions by const reference

Change-Id: I4b4d8ae419dfb8470e8937e75cd3bab85f03b935
Signed-off-by: Pavel Macenauer <pavel.macenauer@nxp.com>
4 years agoIVGCVSW-4187 Add LEAKY_RELU to TFLite parser
Sadik Armagan [Wed, 27 May 2020 10:06:17 +0000 (11:06 +0100)]
IVGCVSW-4187 Add LEAKY_RELU to TFLite parser

Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I3e934142487b92897eb487099a22d032f80e8e07

4 years agoUpdate ArmNN README with doxygen information
Nikhil Raj [Wed, 27 May 2020 10:40:12 +0000 (11:40 +0100)]
Update ArmNN README with doxygen information

Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: I3ac729efba4945868710e2a233646f9634470967

4 years agoRemove Resize layer mentioned twice in the DeserializerSupport.md
Nikhil Raj [Tue, 26 May 2020 16:40:47 +0000 (17:40 +0100)]
Remove Resize layer mentioned twice in the DeserializerSupport.md

Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: Ib8e9074fcd3cc30a092c3e928cb5bc3f2304f7ed

4 years agoIVGCVSW-4595 Change FileOnlyProfilingConnection to all packet processor model
Jim Flynn [Wed, 29 Apr 2020 20:12:13 +0000 (21:12 +0100)]
IVGCVSW-4595 Change FileOnlyProfilingConnection to all packet processor model

Change-Id: Ieccb26190d80e570ddef8d7c22e824eda1b92d7f
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
4 years agoAdd DIV support to TFLite parser
Darshan Patel [Mon, 25 May 2020 17:00:07 +0000 (22:30 +0530)]
Add DIV support to TFLite parser

* Added unit tests
* Updated Documentation

Signed-off-by: Darshan Patel <darsh.jp@gmail.com>
Change-Id: Iadb5c76139d74d755d7f4be4b023b4417efe1e92

4 years agoIVGCVSW-4863 ADD,SUB,DIV,MUL,MAXIMUM and MINIMUM int32 VTS test
Teresa Charlin [Fri, 22 May 2020 17:08:23 +0000 (18:08 +0100)]
IVGCVSW-4863 ADD,SUB,DIV,MUL,MAXIMUM and MINIMUM int32 VTS test
             skipped in CpuRef

Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I1c870ac258e8c3805a95b259cb40731f8e81541e

4 years agoIVGCVSW-4604 ARGMINMAX float16 VTS test skipped in CpuRef
Teresa Charlin [Mon, 25 May 2020 09:01:03 +0000 (10:01 +0100)]
IVGCVSW-4604 ARGMINMAX float16 VTS test skipped in CpuRef

Change-Id: I75cca9804a67f629cddc83671397a84640e9bf0e
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
4 years agoIVGCVSW-4611 PRELU float16 VTS test skipped in CpuRef
Teresa Charlin [Mon, 25 May 2020 15:16:44 +0000 (16:16 +0100)]
IVGCVSW-4611 PRELU float16 VTS test skipped in CpuRef

Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Id908e0bcbefd3284da51cdbe8ec0c2181b9b553e

4 years agoIVGCVSW-4792 Update armnn readme and support files
Narumol Prangnawarat [Mon, 25 May 2020 13:44:46 +0000 (14:44 +0100)]
IVGCVSW-4792 Update armnn readme and support files

 * Add TPIP used by Arm NN
 * Add SqueezeNet to CaffeSupport.md
 * Add ResNet v2 50 to TensorFlowSupport.md
 * Update tested networks in TensorFlowLiteSupported.md

Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: I15927ea600a3dfffee082933d32f235f3940730e

4 years agoIVGCVSW-4186 Add EXP unit tests for TfLiteParser
Ryan OShea [Thu, 21 May 2020 16:07:40 +0000 (17:07 +0100)]
IVGCVSW-4186 Add EXP unit tests for TfLiteParser

 * Updated Documentation
 * Created unit test file

Signed-off-by: Ryan OShea <Ryan.OShea2@arm.com>
Change-Id: Ic8384b5ed21ac53f918860be8a98c0ac7477d0e1

4 years agoFix some musl libc issues in armnn
Finn Williams [Fri, 22 May 2020 13:28:15 +0000 (14:28 +0100)]
Fix some musl libc issues in armnn

Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: Ifb0295ee4516ca6cbd4364ade418b707fb39b354

4 years agoIVGCVSW-4734 Add an Attribute label guid to the relationship message to reduce traffic
Finn Williams [Mon, 11 May 2020 14:39:58 +0000 (15:39 +0100)]
IVGCVSW-4734 Add an Attribute label guid to the relationship message to reduce traffic

Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: Ia55c52c12fe3d30eb47bc42c932a33c620dc9197

4 years agoIVGCVSW-4852 Add In File Copyright Notice Section to ContributorGuide.md
Jim Flynn [Wed, 20 May 2020 08:57:15 +0000 (09:57 +0100)]
IVGCVSW-4852 Add In File Copyright Notice Section to ContributorGuide.md

Change-Id: I58a4c0c6ce5fb806ac317b625663c2e3cbf689c8
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
4 years agoGithub #111
Jegathesan Shanmugam [Thu, 26 Mar 2020 17:17:37 +0000 (22:47 +0530)]
Github #111
Added Dockerfile to build ArmNN under an x86_64 system to target an Arm64 system.

Signed-off-by: Jegathesan Shanmugam <nullbyte.in@gmail.com>
Change-Id: I244bab37cc5fe7b38a22d4b530d42e593f223d79

4 years agoGithub #111
Jegathesan Shanmugam [Thu, 26 Mar 2020 16:55:32 +0000 (22:25 +0530)]
Github #111
Added Docker file to build an Android NDK container to build ARMNN.

Signed-off-by: Jegathesan Shanmugam <nullbyte.in@gmail.com>
Change-Id: I0f15dd21ae295894b168213c6522bb4d20051f76
Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
4 years agoBugfix: Profiling use of substr() incorrectly parses semantic versioning
Francis Murtagh [Fri, 22 May 2020 11:49:25 +0000 (12:49 +0100)]
Bugfix: Profiling use of substr() incorrectly parses semantic versioning

 * With semantic versioning ARMNN_VERSION is changed from 20200500 to 21.0.0
   causing this function to return "Armnn .0..0" instead of "Armnn 20.1"
 * Remove the use of substrings and instead use the Major/Minor macros to
   give the expected output format: "Armnn 21.0" compared to last release's
   "Armnn 20.02"

Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: Id255ff154f59e922434f72a68563ccc6126e187a

4 years agoIVGCVSW-4792 Update armnn readme and support files
Narumol Prangnawarat [Thu, 21 May 2020 13:27:48 +0000 (14:27 +0100)]
IVGCVSW-4792 Update armnn readme and support files

 * Add Transpose to SerializerSupport.md
 * Remove ResizeBilinear as it is deprecated layer
 * Add EXP and SPLIT_V to TensorFlowLiteSupport.md
 * Add transpose to TensorFlowSupport.md

Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: I05b0411b61c1b74b27b4669e81fa8ce521bb4190

4 years agoFind default build location for Compute Library binaries.
Matthew Bentham [Wed, 20 May 2020 09:44:18 +0000 (10:44 +0100)]
Find default build location for Compute Library binaries.

In common cases this reduces the cmake arguments needed
for Compute Library from:
"cmake -DARMCOMPUTENEON=1 -DARMCOMPUTECL=1 -DARMCOMPUTE_ROOT=../ComputeLibrary -DARMCOMPUTE_BUILD_DIR=ARMCOMPUTE_BUILD_DIR=../ComputeLibrary/build -DSHARED_BOOST=1 ../armnn/"
to:
"cmake -DARMCOMPUTENEON=1 -DARMCOMPUTECL=1 -DARMCOMPUTE_ROOT=../ComputeLibrary -DSHARED_BOOST=1 ../armnn/"

Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
Change-Id: I992f4ef428f10dc92ca9457fe8981ae3af93f538

4 years agoIVGCVSW-4453 QLSTM Support
Sadik Armagan [Fri, 22 May 2020 07:36:33 +0000 (08:36 +0100)]
IVGCVSW-4453 QLSTM Support

* Number of elements is output size for projection bias on QLSTM

Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I9d32cfb187bbe0c6ef809a7a89da907fbac83380

4 years agoAdding more performance metrics
alered01 [Thu, 7 May 2020 13:58:29 +0000 (14:58 +0100)]
Adding more performance metrics

* Implemented CLTuning flow for ExecuteNetwork tests
  * Added --tuning-path to specify tuning file to use/create
  * Added --tuning-level to specify tuning level to use as well as enable extra tuning run to generate the tuning file
* Fixed issue where TuningLevel was being parsed incorrectly
* Added measurements for initialization, network parsing, network optimization, tuning, and shutdown
* Added flag to control number of iterations inference is run for

Signed-off-by: alered01 <Alex.Redshaw@arm.com>
Change-Id: Ic739ff26e136e32aff9f0995217c1c3207008ca4

4 years agoFix some build errors spotted on Windows:
Rob Hughes [Tue, 19 May 2020 15:31:10 +0000 (16:31 +0100)]
Fix some build errors spotted on Windows:

* Use exact floating point constants for min/max values
* Rename test case so it doesn't collide with a function name

Change-Id: Icf03cfd8fedd505d02cd7f0a150502557939b903
Signed-off-by: Robert Hughes <robert.hughes@arm.com>
4 years agoCleanup pyarmnn .gitignore
Derek Lamberti [Wed, 20 May 2020 09:56:46 +0000 (10:56 +0100)]
Cleanup pyarmnn .gitignore

Change-Id: I70f78ae111b76569c8f00a331527380903f85896
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
4 years agoIntegration of PyArmNN into CMake
Pavel Macenauer [Wed, 15 Apr 2020 14:17:26 +0000 (14:17 +0000)]
Integration of PyArmNN into CMake

Change-Id: Ice37e693f4598a6b3c38bd38d89f1d35cdaa8a18
Signed-off-by: Pavel Macenauer <pavel.macenauer@nxp.com>