platform/upstream/armnn.git
4 years agoUse X macro for the enum class LayerType
Laurent Carlier [Thu, 16 Apr 2020 11:02:05 +0000 (12:02 +0100)]
Use X macro for the enum class LayerType

In order to improve the maintability of the LayerType enum,
it is easier to use the X macro technique https://en.wikipedia.org/wiki/X_Macro
Thanks to that, the pre-processor can generate some code based on the
list provided by the LIST_OF_LAYER_TYPE macro

Signed-off-by: Laurent Carlier <laurent.carlier@arm.com>
Change-Id: I3a6049abfb1e964fe0bf32aa4e26bec4e29a77de

4 years agoIVGCVSW-4513 Remove boost/algorithm/string *
David Monahan [Thu, 16 Apr 2020 09:01:56 +0000 (10:01 +0100)]
IVGCVSW-4513 Remove boost/algorithm/string *

 * Removed split, classification, trim, string, join, contains
 * Added StringUtils.hpp to replace the removed Boost String functionality

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

4 years agoUpdate ACL pin to d1d7722cfc5ee130115d8d195068a98b16102a21
Nikhil Raj [Mon, 20 Apr 2020 08:44:23 +0000 (09:44 +0100)]
Update ACL pin to d1d7722cfc5ee130115d8d195068a98b16102a21

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

4 years agoUpdate ACL pin to b7f4a95c4bf27b4507e5b3b9278c249b1feefe36
Nikhil Raj [Fri, 17 Apr 2020 08:57:28 +0000 (09:57 +0100)]
Update ACL pin to b7f4a95c4bf27b4507e5b3b9278c249b1feefe36

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

4 years agoIVGCVSW-4704 Update links to how to guides in our README.md
Nikhil Raj [Thu, 16 Apr 2020 16:45:48 +0000 (17:45 +0100)]
IVGCVSW-4704 Update links to how to guides in our README.md

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

4 years agoIVGCVSW-4701 Make the GUIDGenerator thread safe
Finn Williams [Thu, 16 Apr 2020 15:57:59 +0000 (16:57 +0100)]
IVGCVSW-4701 Make the GUIDGenerator thread safe

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

4 years agoIVGCVSW-4699 Force timestamps to always be in nanoseconds
Finn Williams [Thu, 16 Apr 2020 14:32:28 +0000 (15:32 +0100)]
IVGCVSW-4699 Force timestamps to always be in nanoseconds

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

4 years agoIVGCVSW-4696 Update BuildGuideCrossCompilation guide
Nikhil Raj [Tue, 14 Apr 2020 13:41:55 +0000 (14:41 +0100)]
IVGCVSW-4696 Update BuildGuideCrossCompilation guide

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

4 years agoMLECO-712 Enable creation of runtime with external profiling support
Éanna Ó Catháin [Thu, 16 Apr 2020 07:54:12 +0000 (08:54 +0100)]
MLECO-712 Enable creation of runtime with external profiling support

Change-Id: Ie0af439817eb4ed70e6112b2eb6f4a2c787a6bd0
Signed-off-by: Éanna Ó Catháin <eanna.ocathain@arm.com>
4 years agoIVGCVSW-4483 Removes boost::polymorphic_pointer_downcast
Jan Eilers [Fri, 10 Apr 2020 12:00:44 +0000 (13:00 +0100)]
IVGCVSW-4483 Removes boost::polymorphic_pointer_downcast

 * replace boost::polymorphic_pointer_downcast by PolymorphicPointerDowncast
 * replaced/removed includes

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

4 years agoIVGCVSW-4483 Introduce PolymorphicPointerDowncast
Jan Eilers [Fri, 10 Apr 2020 11:40:24 +0000 (12:40 +0100)]
IVGCVSW-4483 Introduce PolymorphicPointerDowncast

 * as replacement for boost::polymorphic_pointer_downcast
 * added PolymorphicPointerDowncast
 * added related unit test
 * added description to PolymorphicDowncast

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

4 years agoAdd PyArmNN to work with ArmNN API of 20.02
Richard Burton [Wed, 8 Apr 2020 15:39:05 +0000 (16:39 +0100)]
Add PyArmNN to work with ArmNN API of 20.02
* Add Swig rules for generating python wrapper
* Add documentation
* Add tests and testing data

Change-Id: If48eda08931514fa21e72214dfead2835f07237c
Signed-off-by: Richard Burton <richard.burton@arm.com>
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
4 years agoIVGCVSW-4666 Call EnableProfiling when state switches to active
Finn Williams [Thu, 9 Apr 2020 15:05:28 +0000 (16:05 +0100)]
IVGCVSW-4666 Call EnableProfiling when state switches to active

 * Move the call to EnableProfiling() into ConnectionAcknowledgedHandler
 * Fix an issue with MockGatord forcing some command handlers to be quiet
 * Add some small unrelated improvements and typo fixes to the
   periodic counter command handlers

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

4 years agoIVGCVSW-4483 Remove boost::polymorphic_downcast
Jan Eilers [Thu, 2 Apr 2020 12:56:54 +0000 (13:56 +0100)]
IVGCVSW-4483 Remove boost::polymorphic_downcast

 * exchange boost::polymorphic_downcast with armnn::PolymorphicDowncast
 * remove unnecessary includes of boost::polymorphic_downcast

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

4 years agoIVGCVSW-4641 Investigate Hal 1.3 VTS Failures
Sadik Armagan [Thu, 9 Apr 2020 14:48:44 +0000 (15:48 +0100)]
IVGCVSW-4641 Investigate Hal 1.3 VTS Failures

* Add QASYMM8_SIGNED data type support to NeonTensorHandle

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

4 years agoUpdate ACL pin to 8abbabd6ad946441c8ef1a03896fa98f7801af1f
Nikhil Raj [Wed, 8 Apr 2020 15:58:04 +0000 (16:58 +0100)]
Update ACL pin to 8abbabd6ad946441c8ef1a03896fa98f7801af1f

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

4 years agoIVGCVSW-4661 Add include Assert to GatordMockService.cpp
Narumol Prangnawarat [Tue, 7 Apr 2020 11:25:05 +0000 (12:25 +0100)]
IVGCVSW-4661 Add include Assert to GatordMockService.cpp

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

4 years agoUpdate ACL pin to 4df2cf3177129d10500d30056bf8404418f703d6
Nikhil Raj [Mon, 6 Apr 2020 15:58:09 +0000 (16:58 +0100)]
Update ACL pin to 4df2cf3177129d10500d30056bf8404418f703d6

Change-Id: Ib88b602b49139724bc1ec094a8ea471b5c96ab3d
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
4 years agoIVGCVSW-4485 Remove Boost assert
Narumol Prangnawarat [Wed, 1 Apr 2020 15:51:23 +0000 (16:51 +0100)]
IVGCVSW-4485 Remove Boost assert

 * Change boost assert to armnn assert
 * Change include file to armnn assert
 * Fix ARMNN_ASSERT_MSG issue with multiple conditions
 * Change BOOST_ASSERT to BOOST_TEST where appropriate
 * Remove unused include statements

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

4 years agoIVGCVSW-3753 Add Clip support to the onnx parser
Finn Williams [Fri, 27 Mar 2020 11:11:50 +0000 (11:11 +0000)]
IVGCVSW-3753 Add Clip support to the onnx parser

Change-Id: I68c842c5906f03b8f5a6131537fea3a1a0db980a
Signed-off-by: Finn Williams <Finn.Williams@arm.com>
4 years agoGithub #367
Jegathesan Shanmugam [Fri, 27 Mar 2020 02:39:29 +0000 (08:09 +0530)]
Github #367
Updated aarch64-linux-gnu tool chains export method.

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

4 years agoAdd flow to exclude libOpenCL when building AndroidnNN
alered01 [Fri, 3 Apr 2020 14:37:13 +0000 (15:37 +0100)]
Add flow to exclude libOpenCL when building AndroidnNN

When building AndroidNN for a commercial silicon device, there's no need to include libOpenCL as we should be able to use the one already on the device

Change-Id: I2ad2e2e15b9619358199b106adf1eae642d0d3f6
Signed-off-by: alered01 <Alex.Redshaw@arm.com>
4 years agoIVGCVSW-4514 Remove lexical_cast.hpp
David Monahan [Fri, 3 Apr 2020 09:22:59 +0000 (10:22 +0100)]
IVGCVSW-4514 Remove lexical_cast.hpp

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

4 years agoIVGCVSW-4455 Add an Activate and Deactivate control packet to the protocol
Keith Davis [Mon, 30 Mar 2020 09:43:41 +0000 (10:43 +0100)]
IVGCVSW-4455 Add an Activate and Deactivate control packet to the protocol

 * Add Activate/Deactivate command handlers
 * Add IReportStructure, INotifyBackends single function interfaces
 * Add overrided mechanism to report structure in Runtime.cpp
 * Add overrided mechanism to notify backends in ProfilingService.cpp
 * Add optional IReportStructure argument to ProfilingService constructor
   for use in ActivateTimelineReportingCommandHandler
 * Refactoring and tidying up indentation
 * Removal of unused code in ProfilingUtils.cpp and ProfilingService.cpp
 * Added GatordMock end to end test
 * Fixed an issue with SendCounterPacket sending duplicate packets
 * Fixed an issue with DirectoryCaptureCommandHandler handling of Optional

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

4 years agoUpdate ACL pin to cbd8144cf623b7d6f691ba7d3a30ae933e87efd8
Nikhil Raj [Thu, 2 Apr 2020 09:58:57 +0000 (10:58 +0100)]
Update ACL pin to cbd8144cf623b7d6f691ba7d3a30ae933e87efd8

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

4 years agoIVGCVSW-4643 Add Convolution2D tests with Bfloat16 input and Float32 output
Narumol Prangnawarat [Wed, 1 Apr 2020 15:51:23 +0000 (16:51 +0100)]
IVGCVSW-4643 Add Convolution2D tests with Bfloat16 input and Float32 output

 * Modify SimpleConvolution2dNhwcTestImpl to allow different input and
out types
 * Add unit tests for Conv2D with Bfloat16 input and Float32 output to
compare the accuracy with Float32 for small value inputs and big value inputs

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

4 years agoIVGCVSW-4641 Investigate Hal 1.3 VTS Failures
Sadik Armagan [Wed, 1 Apr 2020 16:35:30 +0000 (17:35 +0100)]
IVGCVSW-4641 Investigate Hal 1.3 VTS Failures

* Added QAsymmS8 data type support for bias

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

4 years agoMLECO-756 First cut of adding JSONTimelineDecoder and tests
Éanna Ó Catháin [Wed, 1 Apr 2020 14:40:12 +0000 (15:40 +0100)]
MLECO-756 First cut of adding JSONTimelineDecoder and tests

Change-Id: Ibcd5fdefb5dda3ac3f2a5ff6d6eca618c27c538b
Signed-off-by: Éanna Ó Catháin <eanna.ocathain@arm.com>
4 years agoIVGCVSW-4531 Tweak to an existing fix for failing NNT tests on Android R
David Monahan [Tue, 31 Mar 2020 11:19:57 +0000 (12:19 +0100)]
IVGCVSW-4531 Tweak to an existing fix for failing NNT tests on Android R
HAL 1.1/1.2 to account for negative slices

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

4 years agoUpdate ACL pin to afc630fee1c019bfbc191c37d9d7fdf805b0b1d7
Nikhil Raj [Wed, 1 Apr 2020 10:18:52 +0000 (11:18 +0100)]
Update ACL pin to afc630fee1c019bfbc191c37d9d7fdf805b0b1d7

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

4 years agoUpdate ACL pin to 5219ed8a3c56db22867cc0c49db93951a7acb36d
Nikhil Raj [Tue, 31 Mar 2020 09:04:14 +0000 (10:04 +0100)]
Update ACL pin to 5219ed8a3c56db22867cc0c49db93951a7acb36d

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

4 years agoIVGCVSW-4633 Add conversion of BF16 support to Neon
Narumol Prangnawarat [Mon, 30 Mar 2020 15:11:04 +0000 (16:11 +0100)]
IVGCVSW-4633 Add conversion of BF16 support to Neon

 * Add NeonConvertBf16ToFp32Workload
 * Add NeonConvertFp32ToBf16Workload
 * Add BFloat16 type support to NeonConstantWorkload and NeonTensorHandle
 * Add ConvertBf16ToFp32Weight when ConvertBf16ToFp32Layer is added
 * Unit tests

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

4 years agoIVGCVSW-4590 Fix Lstm layers CellToInputWeights
Jan Eilers [Mon, 30 Mar 2020 14:07:45 +0000 (15:07 +0100)]
IVGCVSW-4590 Fix Lstm layers CellToInputWeights

* CellToInputWeights were not handeled correctly
* Changed CellToInputWeights from Cifg to peephole parameter
* Modified exiting unit tests
* Added unit test to cover new configuration
* Added more descriptive error messages

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

4 years agoIVGCVSW-4603 Support comparison operators in Neon
Teresa Charlin [Mon, 30 Mar 2020 10:17:30 +0000 (11:17 +0100)]
IVGCVSW-4603 Support comparison operators in Neon

    * Deprecate NeonGreaterWorkload
    * Add NeonComparisonWorkload to encompass all comparison operators

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

4 years agoUpdate ACL pin to 9f2403ff462c3725a03df68484dc43df6f011ab0
Nikhil Raj [Mon, 30 Mar 2020 09:59:23 +0000 (10:59 +0100)]
Update ACL pin to 9f2403ff462c3725a03df68484dc43df6f011ab0

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

4 years agoIVGCVSW-4603 Support comparison operators in CL
Teresa Charlin [Fri, 27 Mar 2020 16:40:56 +0000 (16:40 +0000)]
IVGCVSW-4603 Support comparison operators in CL

    * Deprecate ClGreaterWorkload
    * Add ClComparisonWorkload to encompass all comparison operators

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

4 years agoUpdate ACL pin to 4b869532f8b2aa7f02aa55c4f4813e994ea2df68
Nikhil Raj [Fri, 27 Mar 2020 11:59:10 +0000 (11:59 +0000)]
Update ACL pin to 4b869532f8b2aa7f02aa55c4f4813e994ea2df68

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

4 years agoIVGCVSW-4555 ArmnnConverter (Serializer) does not support per-axis quantization params
Sadik Armagan [Fri, 27 Mar 2020 15:56:57 +0000 (15:56 +0000)]
IVGCVSW-4555 ArmnnConverter (Serializer) does not support per-axis quantization params

* TensorInfo can have multiple scales and quantization dimension.

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

4 years agoIVGCVSW-4597 Modify BF16 optimizer to Convert only inputs and weights of
Narumol Prangnawarat [Thu, 26 Mar 2020 09:20:43 +0000 (09:20 +0000)]
IVGCVSW-4597 Modify BF16 optimizer to Convert only inputs and weights of
Convolution2d and FullyConnected layers

 * Add InsertConvertFp32ToBf16LayersBefore
 * Add ConvertWeight to ConvertFp32NetworkToBf16Impl for Conv2d and FullyConnected
 * Allow different input and output when input is BF16 and output is FP32
Conv2d and FullyConnected layers
 * Unit tests

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

4 years agoUpdate ACL pin to 1b14c75c0d591c4abe4d2d41b7e4e165fbf58382
Nikhil Raj [Thu, 26 Mar 2020 14:55:42 +0000 (14:55 +0000)]
Update ACL pin to 1b14c75c0d591c4abe4d2d41b7e4e165fbf58382

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

4 years agoIVGCVSW-4599 ArmNN Compile Error when compiled against gcc 9
Francis Murtagh [Thu, 26 Mar 2020 12:14:21 +0000 (12:14 +0000)]
IVGCVSW-4599 ArmNN Compile Error when compiled against gcc 9

 * Use default keyword for armnn::Optional assignment.
 * Use default keyword for BFloat16 copy constructor and assignment.
 * Remove unnecessary const from static_cast template argument which
   was giving ignored-qualifiers warning.

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

4 years agoIVGCVSW-4526 Fix UnitTest errors when running on raspberry pi
Jan Eilers [Thu, 26 Mar 2020 12:04:54 +0000 (12:04 +0000)]
IVGCVSW-4526 Fix UnitTest errors when running on raspberry pi

* The std::thread::id is included in some timeline packages of the
profiler. But the size of thread::id is platform dependent. That's why
some tests expected a wrong package size

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

4 years agoIVGCVSW-4589 Add timeline tests to Mock Gatord end to end test
Finn Williams [Mon, 23 Mar 2020 18:01:49 +0000 (18:01 +0000)]
IVGCVSW-4589 Add timeline tests to Mock Gatord end to end test

Change-Id: I500f82e9fff881e0a49aa5a7cc580c6c4923d33c
Signed-off-by: Finn Williams <Finn.Williams@arm.com>
4 years agoUpdate ACL pin to 51a9558d484e812707a776efceef18b93698cec9
Nikhil Raj [Wed, 25 Mar 2020 11:40:05 +0000 (11:40 +0000)]
Update ACL pin to 51a9558d484e812707a776efceef18b93698cec9

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

4 years agoIVGCVSW-4521 Add bf16-turbo-mode option to ExecuteNetwork
Narumol Prangnawarat [Tue, 24 Mar 2020 13:54:05 +0000 (13:54 +0000)]
IVGCVSW-4521 Add bf16-turbo-mode option to ExecuteNetwork

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

4 years agoIVGCVSW-4596 Fix BufferManager's packet order
Finn Williams [Tue, 24 Mar 2020 13:46:22 +0000 (13:46 +0000)]
IVGCVSW-4596 Fix BufferManager's packet order

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

4 years agoIVGCVSW-3813 Add Unary Elementwise Operation 'NEG' support to the android-nn-driver
Sadik Armagan [Tue, 24 Mar 2020 09:54:36 +0000 (09:54 +0000)]
IVGCVSW-3813 Add Unary Elementwise Operation 'NEG' support to the android-nn-driver

* Implemented ClNegWorkload
* Implemented NeonNegWorkload
* Enabled 'NEG' operator on CL and Neon as well as Ref
* Implemented unit tests for 'NEG' operator

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

4 years agoUpdate ACL pin to 689c968239180eda4263e34c3d450093d4a0450d
Nikhil Raj [Tue, 24 Mar 2020 10:00:12 +0000 (10:00 +0000)]
Update ACL pin to 689c968239180eda4263e34c3d450093d4a0450d

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

4 years agoUpdate ACL pin to 6cd1c9bc312b65137da52a973489ba6a0f0180e3
Nikhil Raj [Mon, 23 Mar 2020 14:34:41 +0000 (14:34 +0000)]
Update ACL pin to 6cd1c9bc312b65137da52a973489ba6a0f0180e3

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

4 years agoIVGCVSW-4520 Implement BFloat16 Optimizer
Narumol Prangnawarat [Fri, 20 Mar 2020 15:01:01 +0000 (15:01 +0000)]
IVGCVSW-4520 Implement BFloat16 Optimizer

 * 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

4 years agoIVGCVSW-4589 Add call to SendWellKnownLabelsAndEventClasses
Finn Williams [Fri, 20 Mar 2020 15:10:59 +0000 (15:10 +0000)]
IVGCVSW-4589 Add call to SendWellKnownLabelsAndEventClasses

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

4 years agoIVGCVSW-4549 Add front end for new QLSTM layer
James Conroy [Fri, 20 Mar 2020 08:49:33 +0000 (08:49 +0000)]
IVGCVSW-4549 Add front end for new QLSTM layer

* 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

4 years agoIVGCVSW-4588 Remove short form of option file-format
Nikhil Raj [Fri, 20 Mar 2020 11:13:48 +0000 (11:13 +0000)]
IVGCVSW-4588 Remove short form of option file-format

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

4 years agoIVGCVSW-4587 ArmNN failing to build in the Internal OOB
Sadik Armagan [Fri, 20 Mar 2020 11:11:01 +0000 (11:11 +0000)]
IVGCVSW-4587 ArmNN failing to build in the Internal OOB

* ProfilingService reference field not required in TimelineUtilityMethods

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

4 years agoIVGCVSW-4582 Undefined reference to GetProfilingService causes failure in the Backend...
Sadik Armagan [Thu, 19 Mar 2020 18:16:46 +0000 (18:16 +0000)]
IVGCVSW-4582 Undefined reference to GetProfilingService causes failure in the Backends CI job

* Enable the GetProfilingService() function to BackendProfilingTests and ProfilingTestUtils

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

4 years agoIVGCVSW-4565 TENSOR_BOOL8 data type not supported in AndroidNN Driver
Sadik Armagan [Thu, 19 Mar 2020 13:53:16 +0000 (13:53 +0000)]
IVGCVSW-4565 TENSOR_BOOL8 data type not supported in AndroidNN Driver

* Enabled Boolean and Int32 data types in Reference Comparison inputs
* Added decoder for Boolean data type
* Refactored ClGreaterWorkload to work with any data type
* Refactored NeonGreaterWorkload to work with any data type

!android-nn-driver:2902

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

4 years agoMLECO-755: ArmNN: Add file format external profiling option
Isabella Gottardi [Wed, 11 Mar 2020 18:04:20 +0000 (18:04 +0000)]
MLECO-755: ArmNN: Add file format external profiling option

* Added new m_FileFormat variable in ExternalProfilingOptions
* Added new profiling option to ExecuteNetwork
* Added check for file format in ProfilingConnectionFactory
* Added test in profiling tests

Change-Id: I0e9cb8ecac919dc0ed03dcf77324a65621f07ae7
Signed-off-by: Isabella Gottardi <isabella.gottardi@arm.com>
4 years agoIVGCVSW-4516 Add ConvertFp32ToBf16Layer and Ref workload support
Narumol Prangnawarat [Mon, 16 Mar 2020 16:36:10 +0000 (16:36 +0000)]
IVGCVSW-4516 Add ConvertFp32ToBf16Layer and Ref workload support

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

4 years agoIVGCVSW-4553 Fix Wrapper Object Use after free in UnitTests.hpp
Finn Williams [Wed, 18 Mar 2020 14:20:37 +0000 (14:20 +0000)]
IVGCVSW-4553 Fix Wrapper Object Use after free in UnitTests.hpp

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

4 years agoIVGCVSW-4552 Fix Wrapper Object Use after free in ProfilerTests
Finn Williams [Wed, 18 Mar 2020 12:51:43 +0000 (12:51 +0000)]
IVGCVSW-4552 Fix Wrapper Object Use after free in ProfilerTests

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

4 years agoIVGCVSW-4446 Add HardSwish EndToEnd tests
Jan Eilers [Wed, 18 Mar 2020 15:58:11 +0000 (15:58 +0000)]
IVGCVSW-4446 Add HardSwish EndToEnd tests

* adds convert from armnn HardSwish to Acl HardSwish
* adds EndToEnd tests for Ref, Cl and Neon

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

4 years agoIVGCVSW-4444 Adding Elu end to end test
Jan Eilers [Wed, 11 Mar 2020 12:52:46 +0000 (12:52 +0000)]
IVGCVSW-4444 Adding Elu end to end test

* implemented activation layer end to end test
* adds support for different tolerances in layer tests
* added tests for Elu (Ref, Cl, Neon)

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

4 years agoIVGCVSW-4463 Change ProfilingService to a member of runtime from a singleton
Sadik Armagan [Wed, 18 Mar 2020 10:57:30 +0000 (10:57 +0000)]
IVGCVSW-4463 Change ProfilingService to a member of runtime from a singleton

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

4 years agoIVGCVSW-4161 Provide for per model call back registration
Finn Williams [Thu, 27 Feb 2020 16:21:41 +0000 (16:21 +0000)]
IVGCVSW-4161 Provide for per model call back registration

!armnn:2810

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

4 years agoUpdate ACL pin to fd7780d910f3bc4c85bc95b57ea3dd4375d95d41
Nikhil Raj [Wed, 18 Mar 2020 10:00:00 +0000 (10:00 +0000)]
Update ACL pin to fd7780d910f3bc4c85bc95b57ea3dd4375d95d41

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

4 years agoIVGCVSW-4515 Add ConvertBf16ToFp32Layer and Ref workload support
Narumol Prangnawarat [Fri, 13 Mar 2020 10:26:05 +0000 (10:26 +0000)]
IVGCVSW-4515 Add ConvertBf16ToFp32Layer and Ref workload support

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

4 years agoIVGCVSW-4545 Relax check on ParseReshape
Derek Lamberti [Tue, 17 Mar 2020 14:25:57 +0000 (14:25 +0000)]
IVGCVSW-4545 Relax check on ParseReshape

Change-Id: Icae7c40abb307e1bbdd383ab3f835f5a1bee2db1
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
4 years agoMLCE-161: Added support for NormalizationLayer in ArmnnQuantizer.
Pablo Tello [Thu, 12 Mar 2020 10:58:39 +0000 (10:58 +0000)]
MLCE-161: Added support for NormalizationLayer in ArmnnQuantizer.

* Improved error reporting by using VisitorThrowingPolicy in
   DynamicQuantizationVisitor.

Change-Id: I8a7d0975d448e6c2b6efb5f315ac255eec29f7a2
Signed-off-by: Pablo Tello <pablo.tello@arm.com>
4 years agoUpdate ACL pin 0ec53a0e54ae0be0ed9c4e4c14a5fd10ed5f48a8 (COMPMID-3238)
Nikhil Raj [Mon, 16 Mar 2020 09:45:43 +0000 (09:45 +0000)]
Update ACL pin 0ec53a0e54ae0be0ed9c4e4c14a5fd10ed5f48a8 (COMPMID-3238)

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

4 years agoIVGCVSW-4531 Fix for failing strided slice NNT/VTS tests on Android R
David Monahan [Fri, 13 Mar 2020 07:52:54 +0000 (07:52 +0000)]
IVGCVSW-4531 Fix for failing strided slice NNT/VTS tests on Android R

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

4 years agoIVGCVSW-3726 Upload ArmNN Doxygen files
Ryan OShea [Fri, 13 Mar 2020 16:26:19 +0000 (16:26 +0000)]
IVGCVSW-3726 Upload ArmNN Doxygen files

 * Upload current ArmNN Doxygen files

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

4 years agoUpdate ACL pin to 470bc1eea65560d13001e60a7f7b22b12ec89bbc(COMPMID-3069)
Nikhil Raj [Fri, 13 Mar 2020 09:35:04 +0000 (09:35 +0000)]
Update ACL pin to 470bc1eea65560d13001e60a7f7b22b12ec89bbc(COMPMID-3069)

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

4 years agoIVGCVSW-4512 Add BFloat16 Debug Workload
Narumol Prangnawarat [Thu, 12 Mar 2020 14:24:13 +0000 (14:24 +0000)]
IVGCVSW-4512 Add BFloat16 Debug Workload

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

4 years agoIVGCVSW-4511 Add BFloat16 to RefLayerSupport and unit tests
Narumol Prangnawarat [Wed, 11 Mar 2020 14:51:27 +0000 (14:51 +0000)]
IVGCVSW-4511 Add BFloat16 to RefLayerSupport and unit tests

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

4 years agoGatordMock: Fixing errors in parsing command file.
Colm Donelan [Mon, 2 Mar 2020 21:35:10 +0000 (21:35 +0000)]
GatordMock: Fixing errors in parsing command file.

An empty line resulted in program exit.

* Ignore empty lines.
* Add error message when an invalid number of parameters to
  SET or WAIT command is encountered.

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

4 years agoIVGCVSW-4545 Fix segfault parsing reshape layer
Derek Lamberti [Wed, 11 Mar 2020 11:42:26 +0000 (11:42 +0000)]
IVGCVSW-4545 Fix segfault parsing reshape layer

Change-Id: Ib4bbab387cec4780c8aae56fdede090fa265e4ba
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
4 years agoUpdate ACL pin to 6800117df3be825f0ec5c6cc71c4377322f51b99
Nikhil Raj [Thu, 12 Mar 2020 10:03:03 +0000 (10:03 +0000)]
Update ACL pin to 6800117df3be825f0ec5c6cc71c4377322f51b99

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

4 years agoIVGCVSW-3726 Doxygen touch-up
Ryan OShea [Wed, 12 Feb 2020 16:15:27 +0000 (16:15 +0000)]
IVGCVSW-3726 Doxygen touch-up

 * Doxygen comment touch-ups
 * Fixed markup in .dox files
 * Fixed stylesheet
 * Doxyfile changes
 * Added logo file
 * Added header file

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

4 years agoIVGCVSW-4542 Refactor TimelineDecoder parsing of TimelinePackets
Keith Davis [Wed, 11 Mar 2020 12:17:05 +0000 (12:17 +0000)]
IVGCVSW-4542 Refactor TimelineDecoder parsing of TimelinePackets

 * Added test to add multiple SwTraceMessages to the buffer
 * Updated TimelineCaptureCommandHandler to iterate until there
   are no more read functions in the packet
 * Further commenting

Change-Id: I41d5acf4f7288ce5a51ffd10a5eea335ac3026ec
Signed-off-by: Keith Davis <keith.davis@arm.com>
4 years agoIVGCVSW-3726 - Doxygen Beautification
Ryan OShea [Wed, 12 Feb 2020 16:15:27 +0000 (16:15 +0000)]
IVGCVSW-3726 - Doxygen Beautification

 * Added .dox files for main sections
 * Merged .md files into .dox files
 * Updated Doxyfile
 * Stylesheet for Doxygen

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

4 years agoUpdate ACL pin to 1c2ff950071c5b4fd6e83487083d23c96637545f
Nikhil Raj [Wed, 11 Mar 2020 15:16:39 +0000 (15:16 +0000)]
Update ACL pin to 1c2ff950071c5b4fd6e83487083d23c96637545f

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

4 years agoIVGCVSW-4517 Modify BFloat16 to conformant to the coding standards
Narumol Prangnawarat [Wed, 11 Mar 2020 11:34:55 +0000 (11:34 +0000)]
IVGCVSW-4517 Modify BFloat16 to conformant to the coding standards

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

4 years agoMLCE-159 Add QAsymmS8 to ArmnnQuantizer
Francis Murtagh [Tue, 10 Mar 2020 13:51:45 +0000 (13:51 +0000)]
MLCE-159 Add QAsymmS8 to ArmnnQuantizer

 * Allow per layer quantization from Fp32 to Int8 (QAsymmS8) like TfLite

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

4 years agoGithub #326 Allow linking against shared Compute Library
Matthew Bentham [Tue, 10 Mar 2020 11:13:17 +0000 (11:13 +0000)]
Github #326 Allow linking against shared Compute Library

As a last resort, check for shared Compute Library in standard paths.
This will work for Linux distribution builds where no static Compute
Library has been installed.

Change-Id: I1ea11d184ef9dcf4480ae0687a4ba81b402c5b2d
Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com>
4 years agoIVGCVSW-4482 Remove boost::ignore_unused
Jan Eilers [Mon, 9 Mar 2020 12:13:48 +0000 (12:13 +0000)]
IVGCVSW-4482 Remove boost::ignore_unused

!referencetests:229377

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

4 years agoIVGCVSW-4517 Implement BFloat16 Encoder and Decoder
Narumol Prangnawarat [Fri, 6 Mar 2020 14:45:57 +0000 (14:45 +0000)]
IVGCVSW-4517 Implement BFloat16 Encoder and Decoder

 * Add ConvertFloat32ToBFloat16
 * Add ConvertBFloat16ToFloat32
 * Add BFloat16Encoder
 * Add BFloat16Decoder
 * Unit tests

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

4 years agoIVGCVSW-4541 Modify Timeline Packet construction
Keith Davis [Thu, 5 Mar 2020 16:25:28 +0000 (16:25 +0000)]
IVGCVSW-4541 Modify Timeline Packet construction

 * 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

4 years agoIVGCVSW-4486 Introduce numeric_cast implementation
Derek Lamberti [Wed, 19 Feb 2020 13:40:56 +0000 (13:40 +0000)]
IVGCVSW-4486 Introduce numeric_cast implementation

Change-Id: I3e64bca4a1709ac199513676579cf3c9a3090f26
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
4 years agoMLCE-160 Error loading quantized model containing BatchNorm Layer
Mike Kelly [Wed, 4 Mar 2020 18:01:13 +0000 (18:01 +0000)]
MLCE-160 Error loading quantized model containing BatchNorm Layer

 * Relaxed restrictions in BatchNormalizationQueueDescriptor::Validate

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

4 years agoIVGCVSW-4540 Fix master build failure to link UnitTests on Android
Sadik Armagan [Mon, 9 Mar 2020 11:04:32 +0000 (11:04 +0000)]
IVGCVSW-4540 Fix master build failure to link UnitTests on Android

Change-Id: I22148a0bf243eabfd045475644510f30096d96e3
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
4 years agoIVGCVSW-4483 Introduce polymorphic_downcast implementation
Derek Lamberti [Wed, 19 Feb 2020 13:30:47 +0000 (13:30 +0000)]
IVGCVSW-4483 Introduce polymorphic_downcast implementation

Change-Id: I958dd719162337eb5c7e71f4ac49dd5784564b1a
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
4 years agoIVGCVSW-4517 Add BFloat16 class and unit tests
Narumol Prangnawarat [Thu, 5 Mar 2020 17:27:45 +0000 (17:27 +0000)]
IVGCVSW-4517 Add BFloat16 class and unit tests

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

4 years agoIVGCVSW-4539 Add missing Activation Unit Test to CL and Neon
Teresa Charlin [Thu, 5 Mar 2020 14:41:50 +0000 (14:41 +0000)]
IVGCVSW-4539 Add missing Activation Unit Test to CL and Neon
    *Square, Tanh, SoftReLu, LeakyReLu, Abs, ReLU

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

4 years agoIVGCVSW-4485 Introduce ARMNN_ASSERT(_MSG) macros
Derek Lamberti [Wed, 19 Feb 2020 13:25:42 +0000 (13:25 +0000)]
IVGCVSW-4485 Introduce ARMNN_ASSERT(_MSG) macros

Change-Id: Iba372f7311a68877a42e52595430db212c5c9fec
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
4 years agoIVGCVSW-4482 Introduce IgnoreUnused implementation
Derek Lamberti [Wed, 19 Feb 2020 13:17:02 +0000 (13:17 +0000)]
IVGCVSW-4482 Introduce IgnoreUnused implementation

Change-Id: Iad534e0e15ce561be6d0ffa23be19496be361385
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
4 years agoUpdate Acl Pin adb3291dda4e56de1af10e783b787445d6587a38
Kevin May [Wed, 4 Mar 2020 08:34:13 +0000 (08:34 +0000)]
Update Acl Pin adb3291dda4e56de1af10e783b787445d6587a38

* COMPMID-3100 Fuse bias addition with fully connected layer NEON
Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: I7a1953c4b611934ab0180c2a934fd047a6c6967a

4 years agoIVGCVSW-4213 Enable split along any dimension
Ryan OShea [Wed, 4 Mar 2020 12:42:05 +0000 (12:42 +0000)]
IVGCVSW-4213 Enable split along any dimension

 * Remove check on split dimension

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

4 years agoIVGCVSW-4160 Make the ARM Developer Studio code a self contained build entity
Finn Williams [Wed, 26 Feb 2020 10:25:26 +0000 (10:25 +0000)]
IVGCVSW-4160 Make the ARM Developer Studio code a self contained build entity

!armnn:2773

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

4 years agoIVGCVSW-4163 Enhance the error handling in the ReadPacket function
Sadik Armagan [Tue, 3 Mar 2020 10:44:56 +0000 (10:44 +0000)]
IVGCVSW-4163 Enhance the error handling in the ReadPacket function

* Introduced armnn::SocketConnectionException with fields error no and socket info.

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

4 years agoIVGCVSW-4508 Add BFloat16 data type
Narumol Prangnawarat [Fri, 28 Feb 2020 12:45:21 +0000 (12:45 +0000)]
IVGCVSW-4508 Add BFloat16 data type

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