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>
Matteo Martincigh [Wed, 2 Oct 2019 11:50:57 +0000 (12:50 +0100)]
IVGCVSW-3937 Add the necessary components to the ProfilingService class to
process a connection to an external profiling service (e.g. gatord)
* Added the required components (CommandHandlerRegistry, CommandHandler,
SendCounterPacket, ...) to the ProfilingService class
* Reworked the ProfilingService::Run procedure and renamed it to Update
* Handling all states but Active in the Run method (future work)
* Updated the unit and tests accordingly
* Added component tests to check that the Connection Acknowledged packet
is handled correctly
* Added test util classes, made the default constructor/destructor protected
to superclass a ProfilingService object
* Added IProfilingConnectionFactory interface
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I010d94b18980c9e6394253f4b2bbe4fe5bb3fe4f
Jim Flynn [Mon, 7 Oct 2019 14:15:12 +0000 (15:15 +0100)]
IVGCVSW-3948 Add Profiling config to Runtime constructor
Change-Id: Ib5cb85e620ed2cd76a85d423b2674b5d80981be9
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
Matteo Martincigh [Mon, 7 Oct 2019 12:05:13 +0000 (13:05 +0100)]
IVGCVSW-3937 Update the Send thread to send out the Metadata packet
* The Send thread now automatically sends out Stream Metadata packets when
the Profiling Service is in WaitingForAck state
* Added a reference to the profiling state in the SendCounterPacket class
* Moving the RuntimeException thrown in the Send thread to the main thread
for rethrowing
* The Stop method now rethrows the exception occurred in the send thread
* The Stop method does not rethrow when destructing the object
* Added unit tests
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: Ice7080bff63199eac84fc4fa1d37fb1a6fcdff89
Matteo Martincigh [Mon, 7 Oct 2019 11:35:21 +0000 (12:35 +0100)]
IVGCVSW-3937 Refactor and improve the CommandHandleRegistry class
* Added simplified RegisterFunctor method
* Code refactoring
* Updated the unit tests accordingly
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: Iee941d898facd9c1ab5366e87c611c99a0468830
Matteo Martincigh [Mon, 7 Oct 2019 09:19:35 +0000 (10:19 +0100)]
IVGCVSW-3937 Make dynamic use the of the profiling connection
in the SendCounterPacket class
* Passing the profiling connection as an argument to the
pertinent methods of the SendCounterPacket class, as the
connection is created dynamically by the ProfilingService
* Updated the unit tests accordingly
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: Ibe72bdbad814a201c4f1505cff4badbb9b03b13e
David Monahan [Mon, 7 Oct 2019 14:11:15 +0000 (15:11 +0100)]
IVGCVSW-3928 Add the Timeline Entity Binary Packet
Signed-off-by: David Monahan <david.monahan@arm.com>
Change-Id: If3dda4c5ba5c79e4bade58e14fc4df677cb2f5a1
Matteo Martincigh [Fri, 4 Oct 2019 16:17:42 +0000 (17:17 +0100)]
IVGCVSW-3937 Refactor and improve the PeriodicCounterCapture class
* Conformed the PeriodicCounterCapture class to the other thread-based
classes
* Code refactoring
* Renamed CounterValues file to ICounterValues
* Removed no longer used file
* Updated unit tests accordingly
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I8c42aa17e17a90cda5cf86eb8ac2d13501ecdadc
Matteo Martincigh [Fri, 4 Oct 2019 16:01:07 +0000 (17:01 +0100)]
IVGCVSW-3937 Rename CommandThread to CommandHandler
* Renamed files, class name and methods accordingly
* Updated unit tests accordingly
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: Ifb88aa61edb93b852a07b1bd59bd259213677b44
Matteo Martincigh [Fri, 4 Oct 2019 13:40:04 +0000 (14:40 +0100)]
IVGCVSW-3937 Refactor the command thread
* Integrated the Join method into Stop
* Updated the unit tests accordingly
* General code refactoring
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: If8537e77b3d3ff2b780f58a07df01191a91d83d2
Matteo Martincigh [Wed, 2 Oct 2019 11:50:57 +0000 (12:50 +0100)]
IVGCVSW-3937 Initial ServiceProfiling refactoring
* Made the ServiceProfiling class a singleton
* Registered basic category and counters
* Code refactoring
* Updated unit tests accordingly
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I648a6202eead2a3016aac14d905511bd945a90cb
Aron Virginas-Tar [Thu, 3 Oct 2019 12:26:30 +0000 (13:26 +0100)]
IVGCVSW-3935 Add Quantizer support for INSTANCE_NORMALIZATION
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I175008c81da028fb5bdc71e0abff06bc6e58734c
Jim Flynn [Fri, 4 Oct 2019 11:25:43 +0000 (04:25 -0700)]
IVGCVSW-3949 Fix signed/unsigned comparison bug
Change-Id: I6a7a809e2d30f137f8221a7d30091d3d6821c213
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
Jim Flynn [Thu, 3 Oct 2019 17:04:30 +0000 (10:04 -0700)]
IVGCVSW-3948 Adds External Profiling cmdline to ExecuteNetwork
Change-Id: If172bcb64e8202abbde4b8a6cee14f672bc259cd
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
David Monahan [Wed, 2 Oct 2019 08:33:57 +0000 (09:33 +0100)]
IVGCVSW-3925 Add Backward compatibility for ITensorHandle CreateTensorHandle functions
Change-Id: I940b7ca706c9a8bc38743176eb7959aa629a6876
Signed-off-by: David Monahan <david.monahan@arm.com>
Narumol Prangnawarat [Mon, 30 Sep 2019 15:20:20 +0000 (16:20 +0100)]
IVGCVSW-3904 Add more unit tests for send thread with BufferManager
* Add timeout parameter to wait for readable data
* Write all readable data to the profiling connection when ready to read
* Set ready to read when buffer exhaust
* Ensure that readable data get written to profiling connection
before the send thread is stopped
* Add MockWriteProfilingConnection to be able to test WritePacket
* Refactor BufferManager and the unit tests
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: I80ae01bd8d0119a3a3a957069ae8ac521c005a12
Matteo Martincigh [Thu, 3 Oct 2019 12:33:22 +0000 (13:33 +0100)]
Changed the encoding of the Readme file to Unix
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: Ia36f91e4abe58bdd16ba050f1e6276df45eaa0b2
Aron Virginas-Tar [Thu, 3 Oct 2019 14:20:53 +0000 (15:20 +0100)]
IVGCVSW-3947 Update ACL pin to
79f88e6d825402388bb79fc123ee2dfe01985bda
* Update ACL pin to gain access to CLInstanceNormalizationLayer
!android-nn-driver:2033
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I286accc9608073d88c51c85c59b11ad5efce1f5d
Matteo Martincigh [Tue, 1 Oct 2019 13:25:34 +0000 (14:25 +0100)]
IVGCVSW-3927 Create the Timeline Label Binary Packet
* Added a new utility function to create a Timeline Label
Binary Packet and write it to a given buffer
* Added new enumeration to be reused for subsequent utility
functions
* Added unit tests
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: Icbabefb9050f3f3b1a30082eabf875593378001f
Aron Virginas-Tar [Thu, 3 Oct 2019 10:15:39 +0000 (11:15 +0100)]
IVGCVSW-3934 Add serialization support for INSTANCE_NORMALIZATION
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: If9b4d30cbd625206ec1c7d37dd8b449983442147
Kevin May [Wed, 2 Oct 2019 13:07:47 +0000 (14:07 +0100)]
IVGCVSW-3932 Add frontend for INSTANCE_NORMALIZATION
Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: Ib152148ccd8d2733c617d0cf9402661fc6b71316
James Conroy [Tue, 17 Sep 2019 13:22:06 +0000 (14:22 +0100)]
IVGCVSW-3696 Add NEON ArgMinMax workload and tests
* Added layer tests and fixed WorkloadData validate.
* Also enabled copy to/from NEON for Signed32.
Signed-off-by: James Conroy <james.conroy@arm.com>
Change-Id: I5e961f88434e18d5a8ebff956d20a1c2cf1b50bb
Matteo Martincigh [Thu, 3 Oct 2019 10:21:18 +0000 (11:21 +0100)]
IVGCVSW-3440 Fix intermittently failing send thread test
* Simplified the implementation of the MockStreamCounterBuffer
* Minor refactoring
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I3aed97daee0ac32d384e1f830e8cc57aae84950b
Matthew Bentham [Wed, 2 Oct 2019 16:12:18 +0000 (17:12 +0100)]
Throw by value, catch by const reference. Even anonymously.
This avoids compiler warnings about catching polymorphic types
by value.
Change-Id: I672bcffe3471fcc0c446bab1e554937ba09208b2
Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com>
Aron Virginas-Tar [Wed, 2 Oct 2019 15:05:44 +0000 (16:05 +0100)]
IVGCVSW-3941 Fix bug around file opening in RecordByRecordCaffeParser
* Added error check after attempting to create input file stream and
throw FileNotFoundException in case of failure
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I46b77e21c5330bb60e1190ddbefa6473e43085d9
Aron Virginas-Tar [Tue, 1 Oct 2019 17:35:44 +0000 (18:35 +0100)]
IVGCVSW-3738 Add end-to-end layer test for DepthToSpace
* Added end-to-end layer test implementation for DepthToSpace
* Added test to reference, CL and NEON backends for all supported
data types and data layouts
* Extracted common data permutation code into new utility file and
refactored some existing tests to reduce code duplication
* Fixed EndToEndLayerTestImpl template to work with Float16 data
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: Iaf7a0012c520451052b20c37e36dc05fa8314ff6
Narumol Prangnawarat [Tue, 1 Oct 2019 10:32:10 +0000 (11:32 +0100)]
IVGCVSW-3882 Update ACL pin
* Update ACL pin to include change of ArgMinMax NEON/CL output type to Signed32
!android-nn-driver:2013
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: I2a0c80e0557f619a213790027efca8b84bf6e58a
Tee Jung [Tue, 1 Oct 2019 02:25:56 +0000 (11:25 +0900)]
Update field name of serialized format not to make problem with js
Signed-off-by: Jung Tae-young <naey05@gmail.com>
Change-Id: I69ee32b5e201198610e7ba6ec22b0c0025a7e57c
Kevin May [Tue, 1 Oct 2019 09:52:10 +0000 (10:52 +0100)]
IVGCVSW-3922 Fix Arm NN build issue - memory access violation
* Only run breaking test if Ref backend is available
Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: I64850c902f7b900fe9f50d357c283c9a2bf73c19
Aron Virginas-Tar [Mon, 30 Sep 2019 15:34:31 +0000 (16:34 +0100)]
IVGCVSW-3734 Enable FLoat16 unit tests for DepthToSpace on NEON
* Added Float16 support to NeonTensorHandle::CopyInFrom() and
NeonTensorHandle::CopyOutTo()
* Added Float16 unit tests for DepthToSpace to NeonLayerTests.cpp
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: Iffbcea699194ea56d5bd43d5e10b0303f07b0933
Aron Virginas-Tar [Mon, 30 Sep 2019 10:24:53 +0000 (11:24 +0100)]
IVGCVSW-3732 Add CL workload for DepthToSpace
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I577c45099eda1d04214e7a1f75fa10d1352efc80
Aron Virginas-Tar [Mon, 30 Sep 2019 12:28:08 +0000 (13:28 +0100)]
IVGCVSW-3734 Add NEON workload for DepthToSpace
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I4fa8cba57f3a2277112c02062f4d2790089d1eb5