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
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
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
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
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
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
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
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>
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
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
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
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
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
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
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>
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>
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
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
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
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
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>
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
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
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
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
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
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>
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
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
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>
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
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>
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
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
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
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
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>
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>
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
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
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
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
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
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
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
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>
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
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
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
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
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
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>
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
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
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
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
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
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>
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>
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
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
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
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
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>
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>
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
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
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
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
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
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
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
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
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
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
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
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>
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
James Conroy [Tue, 8 Oct 2019 14:41:34 +0000 (15:41 +0100)]
IVGCVSW-3944 Add ArgMinMax output shape validation
Signed-off-by: James Conroy <james.conroy@arm.com>
Change-Id: I469895da158b062cd19248832525fa21527f7d41
Aron Virginas-Tar [Wed, 9 Oct 2019 09:36:34 +0000 (10:36 +0100)]
IVGCVSW-3943 Add deserialization test for INSTANCE_NORMALIZATION
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I9f3ab44d0d6644e4bf2958c983d2b5410ba13aec
Matteo Martincigh [Wed, 9 Oct 2019 15:47:04 +0000 (16:47 +0100)]
IVGCVSW-3937 Improve the Connection Acknowledged Handler
* The Connection Acknowledged Handler should report an error
is it's called while in a wrong state
* Stopping the threads in the ProfilingService before having
to start them again
* Updated the unit tests to check the changes
* Removed unnecessary Packet.cpp file
* Fixed memory leak
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I8c4d33b4d97994df86fe6c9f8c659f880ec64c16
Kevin May [Wed, 9 Oct 2019 11:37:34 +0000 (12:37 +0100)]
IVGCVSW-3888 Add INSTANCE_NORMALIZATION Reference implementation
Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: I725022f86e990c482ea323fc90fd136fe493ed68
Sadik Armagan [Wed, 9 Oct 2019 13:26:32 +0000 (14:26 +0100)]
IVGCVSW-3890 Add NEON INSTANCE_NORMALIZATION Workload
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: Ia3e55da6e6a7b9d46544466897e3b1635c90c297
Aron Virginas-Tar [Fri, 4 Oct 2019 12:10:16 +0000 (13:10 +0100)]
IVGCVSW-3889 Add CL workload for INSTANCE_NORMALIZATION
!android-nn-driver:2039
Signed-off-by: Kevin May <kevin.may@arm.com>
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I621dd80920b58b8b795ed13917b88850519c8177
Sadik Armagan [Tue, 8 Oct 2019 14:05:38 +0000 (15:05 +0100)]
IVGCVSW-3926 Create the Timeline Message Directory Package
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I8be40f2e6f1f916b2566ca4d9e87b38d27eb7730
Francis Murtagh [Tue, 8 Oct 2019 13:47:46 +0000 (14:47 +0100)]
IVGCVSW-3669 Fix bug parsing multiple InputShapes in ExecuteNetwork
* Change shape separator from semicolon, a command separator, to colon.
* Update ExecuteNetwork --help prompts.
Change-Id: I6c6d18007cd219482d8187d69962944b833e302e
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>