platform/upstream/armnn.git
4 years agoIVGCVSW-4065 Add a RecordEvent function
Matteo Martincigh [Mon, 4 Nov 2019 14:05:28 +0000 (14:05 +0000)]
IVGCVSW-4065 Add a RecordEvent function

 * Added RecordEvent utility function to the TimelineUtilityMethods
   class
 * Added new utility function to get a timestamp
 * Added unit tests

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: Ia3f8fe7397915fa6c903ce0c0abab3047cea628c

4 years agoIVGCVSW-3837 Add support for per-axis quantization to reference Convolution2d workload
Aron Virginas-Tar [Tue, 5 Nov 2019 18:00:21 +0000 (18:00 +0000)]
IVGCVSW-3837 Add support for per-axis quantization to reference Convolution2d workload

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I0ac08ba4864d48e6f64c4ac645dad8ea850be112

4 years agoIVGCVSW-4038 Convert Strided_Slice Shrink_Axis_Mask Parameter to ACL format
Francis Murtagh [Tue, 5 Nov 2019 14:26:23 +0000 (14:26 +0000)]
IVGCVSW-4038 Convert Strided_Slice Shrink_Axis_Mask Parameter to ACL format

 * Add conversion method to reverse bits in Shrink_Axis_Mask
 * Add Unit tests for Neon, CL and Reference backends
 * Fix supportedness of constant layer which is causing error
   in DeepSpeech Uint8
 * Also convert the Begin_Mask and End_Mask

Change-Id: I448b083c3463558e8fb5204923ab554cd43264ba
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
4 years agoIVGCVSW-3444 File Only Profiling Connection
Keith Davis [Thu, 24 Oct 2019 16:30:41 +0000 (17:30 +0100)]
IVGCVSW-3444 File Only Profiling Connection

    * Add FileOnlyProfilingConnection Decorator
    * Fix bug where Conn Ack not automatically sent back
    * Modify GatordMock to use the Counter Directory class.
    * Promote DirectoryCaptureCommandHandler from GatordMock into ArmNN.
    * Remove MockUtils as it's contents were moved or deleted.
    * Rewrite GatordMockTests to use Counter Directory class.
    * Flush streams in ProfilingConnectionDumpToFileDecorator::Close.

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

4 years agoGitHub #294 Add sample serialized graph
Tee Jung [Tue, 5 Nov 2019 06:17:55 +0000 (15:17 +0900)]
GitHub #294 Add sample serialized graph

converted from tensorflow model: http://download.tensorflow.org/models/object_detection/ssd_mobilenet_v3_small_coco_2019_08_14.tar.gz

Signed-off-by: Jung Tae-young tee.ty.jung@openedges.com
Change-Id: I5867792f36a37d574ce44738d6a412c5557b97df

4 years agoRename Optimize's errMessages to messages
Rob Hughes [Tue, 5 Nov 2019 11:27:36 +0000 (11:27 +0000)]
Rename Optimize's errMessages to messages

This parameter can contain both errors and warnings, so calling it errMessages is confusing as the user only expects to see errors here.

Ideally this rename should be propagated to the lower layers of the implementation,
but the public header change is the most useful part.

Change-Id: I062564cf38d36f950adfa7c37c090b189e068134

4 years agoIVGCVSW-4065 Use platform-specific thread id size in Timeline packets
Matteo Martincigh [Mon, 4 Nov 2019 14:05:28 +0000 (14:05 +0000)]
IVGCVSW-4065 Use platform-specific thread id size in Timeline packets

 * Using std::thread::id as a general data type for thread id
 * Added new profiling util functions for reading/writing a thread id
   to/from a buffer
 * Fixed code and unit tests accordingly

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I1aaa3bdb740c8a97010f655b1e9f7581b52e7aff

4 years agoIVGCVSW-4065 Refactor the IPacketBuffer smart pointers
Matteo Martincigh [Tue, 5 Nov 2019 11:47:40 +0000 (11:47 +0000)]
IVGCVSW-4065 Refactor the IPacketBuffer smart pointers

 * Added convenience "using" statement for the unique pointers to
   IPacketBuffer
 * Replaced all the occurrencies in the code

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: Iffec3a425ffbc1ecb23012971563a48139eb32eb

4 years agoIVGCVSW-3836 Add support for Int32 per-axis scales
Aron Virginas-Tar [Mon, 4 Nov 2019 15:00:19 +0000 (15:00 +0000)]
IVGCVSW-3836 Add support for Int32 per-axis scales

* Added ScaledInt32PerAxisDecoder implementation
* Added new case for Signed32 in MakeDecoder that returns a
  ScaledInt32PerAxisDecoder if the tensor info has multiple
  quantization scales

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I8b3c11091644da993044d2a0fe2aba6b06b5af56

4 years agoIVGCVSW-3843 Add support of per-axis quantization to BuildArmComputeTensorInfo
Aron Virginas-Tar [Fri, 1 Nov 2019 11:40:39 +0000 (11:40 +0000)]
IVGCVSW-3843 Add support of per-axis quantization to BuildArmComputeTensorInfo

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I0bb0e9da306eee3e19dc9967a6c8bb01da998deb

4 years agoIVGCVSW-3835 Create Encoder and Decoder for QSymm8PerAxis
Keith Davis [Mon, 4 Nov 2019 08:58:33 +0000 (08:58 +0000)]
IVGCVSW-3835 Create Encoder and Decoder for QSymm8PerAxis

 * Add QuantizedSymm8PerAxis to armnn DataType (types.hpp) and
 * Add Quantize and Dequantize template for int8 in TypeUtils to be able to compute QSymm8 of the weight
 * Create PerAxisIterator for per-axis quantization
 * Create QSymm8PerAxisDecoder
 * Create QSymm8PerAxisEncoder

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

4 years agoAdd fp16 support for dequantize
Jan Eilers [Fri, 1 Nov 2019 11:09:36 +0000 (11:09 +0000)]
Add fp16 support for dequantize

* Changed RefDequantizeWorkload to use Encoder/Decoder
* Added related unit tests for Cl, Neon and Ref

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

4 years agoMake onnx parser to support TanH / Sigmoid / LeakyRelu layers
Tee Jung [Fri, 1 Nov 2019 07:04:42 +0000 (07:04 +0000)]
Make onnx parser to support TanH / Sigmoid / LeakyRelu layers

Signed-off-by: Jung Tae-young tee.ty.jung@openedges.com
Change-Id: I44d24b525b78b8d3fee0197abda7bd667eb04d83

4 years agoFix crash issue
Tee Jung [Fri, 1 Nov 2019 05:27:28 +0000 (05:27 +0000)]
Fix crash issue

* armnnOnnxParser makes tensorInfo from graph->value_info
  but PyTorch does not add weight/bias tensor information to graph->value_info
  so tensorInfo of const tensor should be extracted from graph->initializer

Signed-off-by: Jung Tae-young tee.ty.jung@openedges.com
Change-Id: Ib2656dd25abc522012cf413e843fe03949cb2eb0

4 years agoMatch shape in between initializer and tensor
Tee Jung [Fri, 1 Nov 2019 11:55:21 +0000 (11:55 +0000)]
Match shape in between initializer and tensor

 * Added extra dims definition for the second dimension of the weights

Signed-off-by: Jung Tae-young tee.ty.jung@openedges.com
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: Ifeeff5c3d4733dbb9c246242fc4b796eb4d515a5

4 years agoBetter error reporting for unconnected layers
Matthew Bentham [Fri, 1 Nov 2019 13:29:48 +0000 (13:29 +0000)]
Better error reporting for unconnected layers

Change-Id: I3c461e5449cf4bfa94d6d5e8dee03c210f2734e5
Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com>
4 years agoIVGCVSW-4050 Add backward compatibility deserialization test for ResizeBilinear
Aron Virginas-Tar [Thu, 31 Oct 2019 14:35:58 +0000 (14:35 +0000)]
IVGCVSW-4050 Add backward compatibility deserialization test for ResizeBilinear

* Added test SerializeResizeBilinear to ensure that ResizeBilinear
  layers are serialized as Resize layers
* Added test EnsureResizeBilinearBackwardCompatibility to ensure
  the Deserializer is still able to deserialize an old binary that
  contains a ResizeBilinear layer and that it creates the correct
  equivalent Resize layer from it

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: If227c5f1f3d027dff7d8f306dee97fd488755a72

4 years agoIVGCVSW-3698 Add EndToEnd Layer test for ArgMinMax
Narumol Prangnawarat [Thu, 31 Oct 2019 14:24:02 +0000 (14:24 +0000)]
IVGCVSW-3698 Add EndToEnd Layer test for ArgMinMax

 * Add EndToEnd test implementation for ArgMinMax
 * Add EndToEnd tests for Ref
 * Fix output data type of ArgMinMax in WorkloadFactory

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

4 years agoIncrease tolerance for bias scale quantization calculation for ResNet50v2
ricbur01 [Thu, 31 Oct 2019 16:22:18 +0000 (16:22 +0000)]
Increase tolerance for bias scale quantization calculation for ResNet50v2

Signed-off-by: Richard Burton <richard.burton@arm.com>
Change-Id: I033ef445fa8e5ae825cfde29927b88e97e20f093

4 years agoGitHub #292 Build the ML-examples using only ArmNN's public frontend API
Matteo Martincigh [Thu, 31 Oct 2019 11:02:47 +0000 (11:02 +0000)]
GitHub #292 Build the ML-examples using only ArmNN's public frontend API

 * Refactoring of some of the public API headers

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I9006fe49945b10a6b83908b05aa4a6556639b491

4 years agoFix bug in deserializitaion of ResizeLayer
Aron Virginas-Tar [Thu, 31 Oct 2019 13:45:16 +0000 (13:45 +0000)]
Fix bug in deserializitaion of ResizeLayer

* Fixed return value for armnnSerializer::ResizeMethod_Bilinear
  in ToResizeMethod()

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: If5ea0fbfec6986d11c409f7072390b8c65805aa9

4 years agoIVGCVSW-4049 Fix potential threading issue with the SendCounterPacket thread
Finn Williams [Thu, 31 Oct 2019 11:15:06 +0000 (11:15 +0000)]
IVGCVSW-4049 Fix potential threading issue with the SendCounterPacket thread

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

4 years agoGithub #277 Add option to use shared boost libraries
Matthew Bentham [Thu, 31 Oct 2019 09:55:01 +0000 (09:55 +0000)]
Github #277 Add option to use shared boost libraries

Pass -DSHARED_BOOST=ON to cmake to link dynamically to boost.
This makes it possible to use standard package-installed boost
libraries in a native build.

Change-Id: I6cbd72fae8b0cf8ae07f4382ab0510854c1623fd
Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com>
4 years agoGithub #220 Mention deprecated Caffe features in the Caffe parser README
Matthew Bentham [Mon, 14 Oct 2019 11:00:56 +0000 (12:00 +0100)]
Github #220 Mention deprecated Caffe features in the Caffe parser README

Change-Id: I443dcc9545392a0b17ffd700d2f14cbed64d35e7
Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com>
4 years agoGitHub #292 Move BackendRegistry.hpp to the public API
Matteo Martincigh [Tue, 29 Oct 2019 15:03:22 +0000 (15:03 +0000)]
GitHub #292 Move BackendRegistry.hpp to the public API

 * Moved to BackendRegistry.hpp include/armnn
 * Updated makefiles and sources accordingly

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I4d83abb581d523218a880c879fcf30c9611f7fd7

4 years agoIVGCVSW-3842 Add per-axis quantization support to ValidateBiasTensorQuantization()
Aron Virginas-Tar [Wed, 30 Oct 2019 16:03:19 +0000 (16:03 +0000)]
IVGCVSW-3842 Add per-axis quantization support to ValidateBiasTensorQuantization()

* Altered the function to validate all the scale values in the bias
  tensor info when per-axis quantization is enabled
* Added unit test to check if ValidateBiasTensorQuantization() works
  as intended

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I676d17690cda6bbdd41da5fdbaa50a3d3b5fd102

4 years agoIVGCVSW-4039 AndroidQ (HAL 1.2) driver support for Fp16
Sadik Armagan [Wed, 30 Oct 2019 16:15:26 +0000 (16:15 +0000)]
IVGCVSW-4039 AndroidQ (HAL 1.2) driver support for Fp16

* Call ACL Validate function for validating Floor operator on CL backend

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

4 years agoIVGCVSW-4037 Add a CreateNamedTypedChildEntity method
Narumol Prangnawarat [Wed, 30 Oct 2019 12:48:31 +0000 (12:48 +0000)]
IVGCVSW-4037 Add a CreateNamedTypedChildEntity method

 * Added new method to the TimelineUtilityMethods class
 * Added unit tests
 * Code refactoring
 * Skipped the 0 when generating a dynamic GUID for testing purposes

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: Ic2c8033ad010e07b0f8b7971ce653263e21c6f97

4 years agoIVGCVSW-4036 Add CreateNamedTypedEntity function
Narumol Prangnawarat [Wed, 30 Oct 2019 12:48:31 +0000 (12:48 +0000)]
IVGCVSW-4036 Add CreateNamedTypedEntity function

 * Add CreateNamedTypedEntity function
 * Add NameEntity function
 * Add TypeEntity function
 * Unit tests

Change-Id: I3cc27157a0b41c8709b0a468f93b58b63a1ad8d1
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
4 years agoIVGCVSW-3831 Add support of per-axis quantization to TensorInfo
Aron Virginas-Tar [Tue, 29 Oct 2019 17:58:36 +0000 (17:58 +0000)]
IVGCVSW-3831 Add support of per-axis quantization to TensorInfo

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: Iea09539c92d51e546fbad8b2903b59fc08d66618

4 years agoIVGCVSW-4035 Add a CreateTypedLabel function
Matteo Martincigh [Mon, 28 Oct 2019 15:24:34 +0000 (15:24 +0000)]
IVGCVSW-4035 Add a CreateTypedLabel function

 * Create new utility function in the TimelineUtilityMethods class
 * Added unit tests

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I63704b94d5cc6861e4e160de2aae4ae497699dd2

4 years agoAdd GetResizeMethodAsCString() function to TypesUtils.hpp
Aron Virginas-Tar [Tue, 29 Oct 2019 13:58:06 +0000 (13:58 +0000)]
Add GetResizeMethodAsCString() function to TypesUtils.hpp

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: Id00eeb7f5e833226aee5e03f8711ab2ae5a84e30

4 years agoRefactor Resize layer tests
Aron Virginas-Tar [Mon, 28 Oct 2019 16:06:50 +0000 (16:06 +0000)]
Refactor Resize layer tests

* Move implementations to newly created source file
  ResizeTestImpl.cpp, leave only the declarations in
  the header
* Reduce code duplication by extracting common code
  into a generic implementation template

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: Ib8aa395e5fb4470b26cbe943c177f6b64c860a93

4 years agoIVGCVSW-4033 Provide a utility method to send the 'well known'
Matteo Martincigh [Mon, 28 Oct 2019 11:42:50 +0000 (11:42 +0000)]
IVGCVSW-4033 Provide a utility method to send the 'well known'
labels and event classes

 * Added utility method SendWellKnownLabelsAndEventClasses
 * Added unit tests

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: Id8ec0d0eb6861feb8b61731e656d1571effc904a

4 years agoIVGCVSW-4031 Provide well known profiling GUIDs
Jim Flynn [Fri, 25 Oct 2019 12:17:30 +0000 (13:17 +0100)]
IVGCVSW-4031 Provide well known profiling GUIDs

Change-Id: Ibf99b025f51503e8937012b655aad74698f32e38
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
4 years agoFix ExecuteNetwork no longer printing out the inference results,
Matteo Martincigh [Mon, 28 Oct 2019 10:48:05 +0000 (10:48 +0000)]
Fix ExecuteNetwork no longer printing out the inference results,
breaking some of the nightly builds

 * The TensorPrinter must be called regardless of the value of
   the output tensor files, it will automatically handle an empty
   file path by only printing the results to the console
 * Code refactoring

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I548ec7cf6d51badf78643c9a6c1c56ea9200142b

4 years agoFix names of quantized types in GetDataTypeName()
Aron Virginas-Tar [Mon, 28 Oct 2019 11:04:10 +0000 (11:04 +0000)]
Fix names of quantized types in GetDataTypeName()

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I485b7f1823a5eb1bb3832a7853d80a3fa00319fb

4 years agoRefine SerializeDeserializeQuantizedLstm for the validation of
alanhsu5678 [Fri, 25 Oct 2019 15:44:16 +0000 (23:44 +0800)]
Refine SerializeDeserializeQuantizedLstm for the validation of
NELSTMLayerQuantized in ACL

Change-Id: I663874da474722a191e55f6c7f6bc127a72fc485
Signed-off-by: alanhsu5678 <gg9662558@gapp.nthu.edu.tw>
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
4 years agoBug fix on serialization of tensor with qsymm16 type
Tee Jung [Wed, 23 Oct 2019 06:42:24 +0000 (06:42 +0000)]
Bug fix on serialization of tensor with qsymm16 type

Signed-off-by: Jung Tae-young <naey05@gmail.com>
Change-Id: Ie3958c25fae752a8ec010ff6c77e4b625dec1f68

4 years agoIVGCVSW-4022 Create a DeclareLabel utility function
Matteo Martincigh [Tue, 22 Oct 2019 10:07:45 +0000 (11:07 +0100)]
IVGCVSW-4022 Create a DeclareLabel utility function

 * Created new TimelineUtilityMethods class
 * Created the DeclareLabel utility methods inside the new class
 * Added unit tests

Change-Id: Ife0f7853a556d48206b76baeb3934344a990bee9
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
4 years agoIVGCVSW-4018 Move QuantizeHelper.hpp to armnnUtils
Aron Virginas-Tar [Tue, 22 Oct 2019 09:00:28 +0000 (10:00 +0100)]
IVGCVSW-4018 Move QuantizeHelper.hpp to armnnUtils

* Moved QuntizeHelper.hpp to armnnUtils
* Reordered parameters for QuantizedVector and added default
  values for qScale and qOffset to make life easier when
  using the function for non-quantized types such as Float16

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I28c263dfa425f1316feccb4116839a84f5d568e5

4 years agoIVGCVSW-4008 Add profiling mode to ExecuteNetwork
Aron Virginas-Tar [Thu, 24 Oct 2019 16:07:43 +0000 (17:07 +0100)]
IVGCVSW-4008 Add profiling mode to ExecuteNetwork

* Removed the requirement for specifying a data file for each
  input tensor
* Added the possibility to generate dummy tensor data (filled
  with 0s) if no data files are specified by the user
* Warn the user when they request to save the output to a file,
  but the input was generate, therefore rendering the output
  useless

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I8baed116dcd99fe380e419db322dc7e04ab1c653

4 years agoIVGCVSW-4032 Update BuildGuideAndroidNDK.md with the TF commit ID that has tf_proto_f...
Nikhil Raj [Fri, 25 Oct 2019 14:16:37 +0000 (15:16 +0100)]
IVGCVSW-4032 Update BuildGuideAndroidNDK.md with the TF commit ID that has tf_proto_file.txt

Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Signed-off-by: Aron Virginas-Tar <aron.virginas-tar@arm.com>
Change-Id: Id925c136536c3c9182236b253220294bfd4619aa

4 years agoIVGCVSW-3962 Return 0 for Neon GetExportFlags()
James Conroy [Fri, 25 Oct 2019 08:44:14 +0000 (09:44 +0100)]
IVGCVSW-3962 Return 0 for Neon GetExportFlags()

* Fixes issue where MemImport workload was being
  inserted into a graph when changing from a NEON
  to Ref workload. A MemCopy will now be performed
  instead.
* Improves existing ImportAlignedPointerTest by
  adding check for expected output.

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

4 years agoIVGCVSW-4028 Add TimelinePacketWriterFactory to ProfilingService
Jim Flynn [Thu, 24 Oct 2019 17:07:44 +0000 (18:07 +0100)]
IVGCVSW-4028 Add TimelinePacketWriterFactory to ProfilingService

Change-Id: I1baf6ff49fc591577efab8190352f2ae5a7dc5e5
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
4 years agoIVGCVSW-4027 Add the IProfilingGuidGenerator interface
Jim Flynn [Thu, 24 Oct 2019 10:58:06 +0000 (11:58 +0100)]
IVGCVSW-4027 Add the IProfilingGuidGenerator interface

Change-Id: Idfb80d73171aa2b57d4dcf01dc137817cf19d2bd
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
4 years agoIVGCVSW-4007 Add StandInLayer for unsupported operations in TfLiteParser
Aron Virginas-Tar [Wed, 23 Oct 2019 16:38:17 +0000 (17:38 +0100)]
IVGCVSW-4007 Add StandInLayer for unsupported operations in TfLiteParser

* Fixed bug in custom operator support that caused all custom operators
  to be parsed as a DetectionPostProcessLayer
* Added support for handling unsupported operators (built-in or custom)
  by replacing them with a StandInLayer in the generated network
* Added options to TfLiteParser to control whether we want to use
  StandInLayers when we encounter unsupported operators, or we prefer
  to throw a ParserException as until now

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I125a63016c7c510b1fdde6033842db4f276718c4

4 years agoIVGCVSW-3950 Create SendTimelinePacket interface and class
Sadik Armagan [Thu, 24 Oct 2019 09:26:05 +0000 (10:26 +0100)]
IVGCVSW-3950 Create SendTimelinePacket interface and class

* Implemented ISendTimelinePacket interface and its implementation SendTimelinePacket
* Implemented TimelinePacketWriterFactory
* Implemented unit tests for SendTimelinePacket functions

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

4 years agoIVGCVSW-4011 Add Unit tests for StandInLayer
Colm Donelan [Wed, 23 Oct 2019 13:18:56 +0000 (14:18 +0100)]
IVGCVSW-4011 Add Unit tests for StandInLayer

* Added network level unit tests with different number of inputs
  and outputs.

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

4 years agoRefactor backward compatibility deserialization tests
Aron Virginas-Tar [Tue, 22 Oct 2019 15:24:48 +0000 (16:24 +0100)]
Refactor backward compatibility deserialization tests

* Change C-style arrays to vectors and simplify string
  construction
* Leave whitespace after comma in initializer list

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I3adddae61e79cbcd878d13532d4199fc2581a328

4 years agoIVGCVSW-4010 Add serialization support for StandInLayer
Aron Virginas-Tar [Wed, 23 Oct 2019 09:41:35 +0000 (10:41 +0100)]
IVGCVSW-4010 Add serialization support for StandInLayer

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I2017c15b485b82437c6ffdac4d3112bcc2cbe9e9

4 years agoIVGCVSW-4013 Test that the quantizer fails gracefully
Sadik Armagan [Wed, 23 Oct 2019 10:22:39 +0000 (11:22 +0100)]
IVGCVSW-4013 Test that the quantizer fails gracefully

* Added Quantizer test for StandIn Layer

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

4 years agoFix build failures on RPi 4B
Jammy Zhou [Mon, 21 Oct 2019 08:44:40 +0000 (16:44 +0800)]
Fix build failures on RPi 4B

Signed-off-by: Jammy Zhou <jammy.zhou@gmail.com>
Change-Id: I12562c4a9671cd43884e7c0c023ca463a99c3aa2

4 years agoIVGCVSW-4021 Fixing failure in the ExecuteNetworkDynamicBackends test
Nikhil Raj [Tue, 22 Oct 2019 16:19:23 +0000 (17:19 +0100)]
IVGCVSW-4021 Fixing failure in the ExecuteNetworkDynamicBackends test

Change-Id: I24ecd8ccf3e3c1586abc906f6ee9bdfd652e5c39
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
4 years agoIVGCVSW-3995 Add Quantizer support for ComparisonLayer
Aron Virginas-Tar [Tue, 22 Oct 2019 13:22:17 +0000 (14:22 +0100)]
IVGCVSW-3995 Add Quantizer support for ComparisonLayer

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: Iab9b234d233591391a8e8626b7e8df3b7b0770a0

4 years agoIVGCVSW-3980 Add ProfilingGuid and ProfilingGuidGenerator API
Narumol Prangnawarat [Tue, 22 Oct 2019 13:17:11 +0000 (14:17 +0100)]
IVGCVSW-3980 Add ProfilingGuid and ProfilingGuidGenerator API

 * ProfilingGuid
 * ProfilingDynamicGuid
 * ProfilingStaticGuid
 * ProfilingGuidGenerator API
 * Unit tests

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

4 years agoIVGCVSW-4020 Add backward compatibility deserialization test for Equal and Greater
Aron Virginas-Tar [Tue, 22 Oct 2019 10:44:47 +0000 (11:44 +0100)]
IVGCVSW-4020 Add backward compatibility deserialization test for Equal and Greater

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: Ic185987e2aba23a857ae59b7115a1c0c53048978

4 years agoFix for bug where ProfilingConnectionDumpToFactory is not used in profiling service
Keith Davis [Thu, 17 Oct 2019 08:52:50 +0000 (09:52 +0100)]
Fix for bug where ProfilingConnectionDumpToFactory is not used in profiling service

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

4 years agoIVGCVSW-3669 Fix TfLiteParser to set Splitter layer outputs' quantization params
Francis Murtagh [Mon, 21 Oct 2019 09:52:54 +0000 (10:52 +0100)]
IVGCVSW-3669 Fix TfLiteParser to set Splitter layer outputs' quantization params

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

4 years agoIVGCVSW-4009 Enable IsLayerSupported tests again
Derek Lamberti [Mon, 21 Oct 2019 15:51:11 +0000 (16:51 +0100)]
IVGCVSW-4009 Enable IsLayerSupported tests again

Change-Id: Ie4e32246783c5e6df6421eef77bbc0ac86381259
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
4 years agoFix Unpack in TfLiteParser missing quantization parameters
Narumol Prangnawarat [Mon, 21 Oct 2019 13:58:26 +0000 (14:58 +0100)]
Fix Unpack in TfLiteParser missing quantization parameters

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

4 years agoIVGCVSW-3989 Create the Counter Directory Decoder
Finn Williams [Tue, 15 Oct 2019 13:22:13 +0000 (14:22 +0100)]
IVGCVSW-3989 Create the Counter Directory Decoder

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

4 years agoIVGCVSW-3996 Add deserialization test for ComparisonLayer
Aron Virginas-Tar [Mon, 21 Oct 2019 13:09:11 +0000 (14:09 +0100)]
IVGCVSW-3996 Add deserialization test for ComparisonLayer

* Added DeserializeComparison.cpp that contains float32 and quantized
  deserialization test cases for all comparison operations
* Removed DeserializeEqual.cpp and DeserializeGreater.cpp, as they
  have become redundant

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I9577168721e1bc6bcc5bb2b35edf82390a816597

4 years agoIVGCVSW-3999 Add unit tests for new comparison operations
Aron Virginas-Tar [Fri, 18 Oct 2019 14:42:58 +0000 (15:42 +0100)]
IVGCVSW-3999 Add unit tests for new comparison operations

* Refactored existing tests for Equal and Greater and moved them
  to ComparisonTestImpl.cpp
* Removed EqualTestImpl.cpp and GreaterTestImpl.cpp
* Added new unit tests for GreaterOrEqual, Less, LessOrEqual
  and NotEqual

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I25013200beb1acb88e83b813c5382cb277c74cd7

4 years agoGithub #275 Generate versionned libraries
Matteo Martincigh [Mon, 21 Oct 2019 10:33:50 +0000 (11:33 +0100)]
Github #275 Generate versionned libraries

 * Fixed typo that broke the versioning of libarmnnQuantizer.so

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I3cfe2e2a79c81f66c715f355d0a4554d41b5cb45

4 years agoIVGCVSW-4009 Get string name for StandInLayer type
Derek Lamberti [Mon, 21 Oct 2019 13:10:38 +0000 (14:10 +0100)]
IVGCVSW-4009 Get string name for StandInLayer type

Change-Id: I6808937bd35a2419814d04016b780efa6bb8724c
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
4 years agoIVGCVSW-4009 StandInLayer frontend API
Derek Lamberti [Mon, 21 Oct 2019 09:46:16 +0000 (10:46 +0100)]
IVGCVSW-4009 StandInLayer frontend API

Change-Id: I058c57b554769799c6775813215070ef47790e3d
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
4 years agoIVGCVSW-3992 Add serialization support for ComparisonLayer
Aron Virginas-Tar [Thu, 17 Oct 2019 15:11:54 +0000 (16:11 +0100)]
IVGCVSW-3992 Add serialization support for ComparisonLayer

* Added serialization support and serialization-deserialization test
  for Comparison
* Added backward compatibility tests for Equal and Greater, to make
  sure they are serialized and deserialized as Comparison
* Refactored serialization tests and reduced code duplication by
  taking advantage of operator==() recently added for Descriptors

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: Id0fd94ef4b17e4e51c8005e585ea3c47f9c1bd8d

4 years agoIVGCVSW-3993 Add frontend and reference workload for ComparisonLayer
Aron Virginas-Tar [Wed, 16 Oct 2019 16:45:38 +0000 (17:45 +0100)]
IVGCVSW-3993 Add frontend and reference workload for ComparisonLayer

* Added frontend for ComparisonLayer
* Added RefComparisonWorkload
* Deprecated and removed Equal and Greater layers and workloads
* Updated tests to ensure backward compatibility

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: Id50c880be1b567c531efff919c0c366d0a71cbe9

4 years agoIVGCVSW-3721 Add support for startup sequence (Mock Gatord service).
Colm Donelan [Fri, 18 Oct 2019 15:49:28 +0000 (16:49 +0100)]
IVGCVSW-3721 Add support for startup sequence (Mock Gatord service).

Fixing logic error in PeriodicCounterCaptureCommandHandler. Default
quiet operation should be false and the unit tests should set it to
true.

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

4 years agoGithub #275 Generate versionned libraries
Matteo Martincigh [Fri, 18 Oct 2019 13:59:19 +0000 (14:59 +0100)]
Github #275 Generate versionned libraries

 * Improved parsing of the ArmNN's version at compile time
 * Reading the version directly from the Version.hpp file, to
   make sure not to break any build made with a different
   build system than CMake (or Ninja)
 * The version macro is set in the Version.hpp just like before,
   so setting it from the command line is no longer necessary

!android-nn-driver:2126

Signed-off-by: Guillaume Gardet <guillaume.gardet@arm.com>
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I0820094607734d283ded030e4ded0ae6f5889c86

4 years agoIVGCVSW-4005 Add PacketFamilyId to version resolver
Jim Flynn [Fri, 18 Oct 2019 12:21:43 +0000 (13:21 +0100)]
IVGCVSW-4005 Add PacketFamilyId to version resolver

Change-Id: Ief9373871438df4e1d353bbc545a3ee4f25c1fb0
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
4 years agoIVGCVSW-4002 Add FamilyId to CommandHandlerKey
Jim Flynn [Thu, 17 Oct 2019 16:37:10 +0000 (17:37 +0100)]
IVGCVSW-4002 Add FamilyId to CommandHandlerKey

Change-Id: I0bb0bf77da2bcd7f4746078c4ccee9acc98638a7
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
4 years agoIVGCVSW-3409 Create the ProfilingService class
Colm Donelan [Thu, 17 Oct 2019 13:02:44 +0000 (14:02 +0100)]
IVGCVSW-3409 Create the ProfilingService class

* Improve the error handling in SocketProfilingConnection to close the
  socket when an error has been detected.
* Update the CommandHandler thread to handle a closed socket.

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

4 years agoIVGCVSW-3721 Add support for startup sequence (Mock Gatord service).
Colm Donelan [Wed, 16 Oct 2019 11:24:20 +0000 (12:24 +0100)]
IVGCVSW-3721 Add support for startup sequence (Mock Gatord service).

* Updated ExecuteNetwork to propagate a configured Runtime down to RunTest.
* Fixed the creation of PeriodicCounterCaptureCommandHandler to match
  other handlers.
* Moved around some printouts to make the MockGatorD output more useful.
* Added details to the exception handling for problems in the
  GatordMockService receive thread.
* Mockutils::ConstructHeader is only used in GatordMockTests. Moved it
  in there and deleted MockUtils.hpp
* Refactored SendPeriodicCounterSelectionList to use ProfilingUtils.
* Added PeriodicCounterSelectionResponseHandler to received packet echoed back.

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

4 years agoMove version definition to its own file
Guillaume Gardet [Tue, 15 Oct 2019 06:47:26 +0000 (08:47 +0200)]
Move version definition to its own file

 * Move the ArmNN version to a separate ArmnnVersion.txt file
 * Updated makefiles accordingly

!referencetests:206978
!android-nn-driver:2110

Signed-off-by: Guillaume Gardet <guillaume.gardet@arm.com>
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: Ib1a34d38b5f4c7490108ea91d930cf5417d1ca94

4 years agoIVGCVSW-3400 Fixed include directives for Gatord builds
Matteo Martincigh [Thu, 17 Oct 2019 12:26:21 +0000 (13:26 +0100)]
IVGCVSW-3400 Fixed include directives for Gatord builds

 * Using proper include directives with include paths
 * The relative paths used were causing trouble when building
   on other CI systems

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I897a80d1f56fbdbc3c714a50a0598210d8f0a03c

4 years agoIVGCVSW-3930 Create the Timeline Relationship Binary Packet
Narumol Prangnawarat [Wed, 16 Oct 2019 11:16:26 +0000 (12:16 +0100)]
IVGCVSW-3930 Create the Timeline Relationship Binary Packet

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

4 years agoIVGCVSW-3931 Create the Timeline Event Binary Packet
Matteo Martincigh [Wed, 16 Oct 2019 09:29:17 +0000 (10:29 +0100)]
IVGCVSW-3931 Create the Timeline Event Binary Packet

 * Added WriteTimelineEventBinaryPacket function
 * Added unit tests
 * Code refactoring

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I36b6a8b26bb46eb5ea97bb711ef7e153ea6d851f

4 years agoRefactor ProfilingUtils
Jan Eilers [Wed, 16 Oct 2019 08:54:15 +0000 (09:54 +0100)]
Refactor ProfilingUtils

* Added decl_id to all swtrace stream messages
* Adjusted unit tests to include decl_id
* Refactored code to reduce code duplication

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

4 years agoIVGCVSW-3929 Create the Timeline Event Class Binary Packet
Jan Eilers [Tue, 15 Oct 2019 14:23:25 +0000 (15:23 +0100)]
IVGCVSW-3929 Create the Timeline Event Class Binary Packet

* Added some utility functions
* Added WriteTimelineEventClassBinaryPacket
* Added related unit tests

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

4 years agoIVGCVSW-3991 Make Descriptor objects comparable and refactor LayerVisitor tests
Aron Virginas-Tar [Tue, 15 Oct 2019 16:35:36 +0000 (17:35 +0100)]
IVGCVSW-3991 Make Descriptor objects comparable and refactor LayerVisitor tests

* Implemented operator==() for Descriptor structs
* Refactored TestNameAndDescriptorLayerVisitor to eliminate code duplication
  by using templates and taking advantage of the fact that descriptor objects
  can now all be compared the same way using ==
* Cleaned up TestNameOnlylayerVisitor by moving all test cases for layers
  that require a descriptor to TestNameAndDescriptorLayerVisitor

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: Iee38b04d68d34a5f4ec7e5790de39ecb7ab0fb80

4 years agoIVGCVSW-3895 Add EndToEndLayerTest for the Reference Implementation of LOG_SOFTMAX
Sadik Armagan [Wed, 16 Oct 2019 08:29:38 +0000 (09:29 +0100)]
IVGCVSW-3895 Add EndToEndLayerTest for the Reference Implementation of LOG_SOFTMAX

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

4 years agoIVGCVSW-3939 Code refactoring and minor fixes
Matteo Martincigh [Tue, 15 Oct 2019 08:35:29 +0000 (09:35 +0100)]
IVGCVSW-3939 Code refactoring and minor fixes

 * Fixed value masking in SendPeriodicCounterCapturePacket and updated
   the pertinent unit tests
 * Code refactoring and cleanup
 * Added extra comments to the ProfilingService stop/reset procedure

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: Ibaf2fede76e06d5b8ce7258a4820a60e5993559f

4 years agoIVGCVSW-3948 Add Startup method to Profiling
Jim Flynn [Tue, 15 Oct 2019 09:18:11 +0000 (10:18 +0100)]
IVGCVSW-3948 Add Startup method to Profiling

Change-Id: I591e84048775278bfc728e1b0c189ff4cf2d350b
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
4 years agoIVGCVSW-3892 Add EndToEnd Layer test for INSTANCE_NORMALIZATION
Sadik Armagan [Mon, 14 Oct 2019 09:31:43 +0000 (10:31 +0100)]
IVGCVSW-3892 Add EndToEnd Layer test for INSTANCE_NORMALIZATION

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

4 years agoIVGCVSW-3977 Add deserialization test for LOG_SOFTMAX
Aron Virginas-Tar [Mon, 14 Oct 2019 15:43:13 +0000 (16:43 +0100)]
IVGCVSW-3977 Add deserialization test for LOG_SOFTMAX

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I0139e521188381c789fdf2ceceeeaaa48427c6ab

4 years agoIVGCVSW-3975 Add reference workload for LOG_SOFTMAX
Aron Virginas-Tar [Mon, 14 Oct 2019 14:12:00 +0000 (15:12 +0100)]
IVGCVSW-3975 Add reference workload for LOG_SOFTMAX

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I10bb7133e0e2d6d7199abdf39562b1226bbbd3e7

4 years agoIVGCVSW-3984 Fix CheckPeriodicCounterCaptureThread
Finn Williams [Mon, 14 Oct 2019 14:55:18 +0000 (15:55 +0100)]
IVGCVSW-3984 Fix CheckPeriodicCounterCaptureThread

 * PerodicCounterCapture now sleeps instead of terminating
   when reading empty counter data
 * m_IsRunning is now set to false after the thread is joined and
   is no longer atomic
 * removed usages of find() (not thread safe)

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

4 years agoIVGCVSW-3976 Add Quantizer support for LOG_SOFTMAX
Sadik Armagan [Mon, 14 Oct 2019 10:47:07 +0000 (11:47 +0100)]
IVGCVSW-3976 Add Quantizer support for LOG_SOFTMAX

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

4 years agoIVGCVSW-3971 Implement the Per-Job Counter Selection command handler
Matteo Martincigh [Fri, 11 Oct 2019 16:19:56 +0000 (17:19 +0100)]
IVGCVSW-3971 Implement the Per-Job Counter Selection command handler

 * Added new PerJobCounterSelectionCommandHandler class
 * The new handler drops the incoming packet without altering the
   state of the profiling service
 * Added unit test

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I2b1bb803318a9e6c438391a0985893eb412e7787

4 years agoIVGCVSW-3972 Implement the Disconnect functionality
Jim Flynn [Mon, 14 Oct 2019 11:31:10 +0000 (12:31 +0100)]
IVGCVSW-3972 Implement the Disconnect functionality

 * Added Disconnect method to the ProfilingService class
 * Added unit test

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
Change-Id: I5cc57abd3e1239cdf8afe21ee4883c1f73cd0e80

4 years agoIVGCVSW-3974 Add serialization support for LOG_SOFTMAX
Sadik Armagan [Mon, 14 Oct 2019 12:00:47 +0000 (13:00 +0100)]
IVGCVSW-3974 Add serialization support for LOG_SOFTMAX

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

4 years agoIVGCVSW-3551 Fix CounterCaptureHandlingTest
Finn Williams [Fri, 11 Oct 2019 17:25:07 +0000 (18:25 +0100)]
IVGCVSW-3551 Fix CounterCaptureHandlingTest

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

4 years agoIVGCVSW-3964 Implement the Periodic Counter Selection command handler
Matteo Martincigh [Thu, 10 Oct 2019 13:08:21 +0000 (14:08 +0100)]
IVGCVSW-3964 Implement the Periodic Counter Selection command handler

 * Improved the PeriodicCounterPacket class to handle errors properly
 * Improved the PeriodicCounterSelectionCommandHandler to handle
   invalid counter UIDs in the selection packet
 * Added the Periodic Counter Selection command handler to the
   ProfilingService class
 * Code refactoring and added comments
 * Added WaitForPacketSent method to the SendCounterPacket class
   to allow waiting for the packets to be sent (useful in the
   unit tests)
 * Added unit tests and updated the old ones accordingly
 * Fixed threading issues with a number of unit tests

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I271b7b0bfa801d88fe1725b934d24e30cd839ed7

4 years agoIVGCVSW-3973 Add frontend for LOG_SOFTMAX
Aron Virginas-Tar [Fri, 11 Oct 2019 13:07:53 +0000 (14:07 +0100)]
IVGCVSW-3973 Add frontend for LOG_SOFTMAX

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: Ic6acc7176deea3753b32ce6340f642d19dce0e9f

4 years agoIVGCVSW-3721 Add support for startup sequence (Mock Gatord service).
Colm Donelan [Fri, 11 Oct 2019 12:09:49 +0000 (13:09 +0100)]
IVGCVSW-3721 Add support for startup sequence (Mock Gatord service).

* Receive and process the stream metadata from the client.
* Send the connection ack packet.
* Wait in a receiving thread and print the packets.
* GatordMockTest and Impl for PeriodicCounterCapture CommandHandler
* CaptureData class to retain packet data
* MockUtils
* Update SocketProfilingConnection to fix non blocking receipt of packets.
* Restructure directory layout following review comments.
* Extract the mock service into a static library in the cmake files.

Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Signed-off-by: Keith Davis <keith.davis@arm.com>
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: I33c1c9f93976708c9315f71290d42cff53b8c075

4 years agoIVGCVSW-3964 Change the type held by the Packet class to unsigned char
Matteo Martincigh [Thu, 10 Oct 2019 12:29:02 +0000 (13:29 +0100)]
IVGCVSW-3964 Change the type held by the Packet class to unsigned char

 * Updated the Packet class
 * Updated the pertinent code accordingly

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I73eab5b1ead67a610cd17fd33f8a74f764ad8cc4

4 years agoIVGCVSW-3963 Implement the Request Counter Directory Handler
Matteo Martincigh [Thu, 10 Oct 2019 13:30:29 +0000 (14:30 +0100)]
IVGCVSW-3963 Implement the Request Counter Directory Handler

 * Integrated the RequestCounterDirectoryCommandHandler in the
   ProfilingService class
 * Code refactoring
 * Added/Updated unit tests

Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I60d9f8acf166e29b3dabc921dbdb8149461bd85f

4 years agoIVGCVSW-3967 Avg_Pooling2d Fails on CL NHWC FP16
Sadik Armagan [Thu, 10 Oct 2019 09:43:20 +0000 (10:43 +0100)]
IVGCVSW-3967 Avg_Pooling2d Fails on CL NHWC FP16

 * Enable fp_mixed_precision flag for the failing test case

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