aboutsummaryrefslogtreecommitdiff
path: root/src/profiling
AgeCommit message (Collapse)Author
2020-05-27IVGCVSW-4735 Add label GUID to timeline eventClass messageJim Flynn
Change-Id: Ie205d8146f5bb1920bf001b7623ead79e2ab9e48 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2020-05-27Catch exceptions by const referencePavel Macenauer
Change-Id: I4b4d8ae419dfb8470e8937e75cd3bab85f03b935 Signed-off-by: Pavel Macenauer <pavel.macenauer@nxp.com>
2020-05-26IVGCVSW-4595 Change FileOnlyProfilingConnection to all packet processor modelJim Flynn
Change-Id: Ieccb26190d80e570ddef8d7c22e824eda1b92d7f Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2020-05-24IVGCVSW-4734 Add an Attribute label guid to the relationship message to ↵Finn Williams
reduce traffic Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: Ia55c52c12fe3d30eb47bc42c932a33c620dc9197
2020-05-22Bugfix: Profiling use of substr() incorrectly parses semantic versioningFrancis Murtagh
* With semantic versioning ARMNN_VERSION is changed from 20200500 to 21.0.0 causing this function to return "Armnn .0..0" instead of "Armnn 20.1" * Remove the use of substrings and instead use the Major/Minor macros to give the expected output format: "Armnn 21.0" compared to last release's "Armnn 20.02" Signed-off-by: Francis Murtagh <francis.murtagh@arm.com> Change-Id: Id255ff154f59e922434f72a68563ccc6126e187a
2020-05-19IVGCVSW-4834 Add calls to increment REGISTERED_BACKENDS and ↵Finn Williams
UNREGISTERED_BACKENDS Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I3600dd15f97ccd4ab745deb87d06ba978e2a0b11
2020-05-19Fix some Windows build errors:Rob Hughes
* Cast to correct datatype for Winsock API * Replace non-standard u_int32_t * Add missing link dependency of timelineDecoder on armnn * Don't try to link pthread if the platform doesn't have it * Use abstracted Socket type rather than int * Link to WinSock DLL on windows Change-Id: I9ace4af50257ce1e3da92fb4c452f36775dac973 Signed-off-by: Robert Hughes <robert.hughes@arm.com>
2020-05-15IVGCVSW-4831 Fix Packet header includes in backendsFinn Williams
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com> Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: Iedfcf0ef487bd7836b1bc4ba8a0e4337dc4da391
2020-05-15IVGCVSW-4835 Change CounterSet and Device name offsets sizes to bytesFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I5dee006d5532cc85b86997a4cd0877afbf043122
2020-05-13IVGCVSW-4828 Call m_CounterDirectory.IsCounterRegistered in ↵Finn Williams
ProfilingService::IsCounterRegistered Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I3d207a74a147f1ca2ddae43c65c65ca7cdbe2368
2020-05-13IVGCVSW-4737 Add check for CpuRef back-end before using it in testsFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: Id7fbb7a39d2e9c7085636df44d4c8603a60cd4bf
2020-05-13IVGCVSW-4794 Change ArmNN counters to report delta valuesFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I7957ee41fd700ee502cc14aa313a60664d4caec9
2020-05-13IVGCVSW-4776 Warn when MIN_STATIC_GUID is returned from GenerateStaticId ↵Colm Donelan
multiple times. * Modify StaticGuidGeneratorCollisionTest to identify cases where MIN_STATIC_GUID has been returned from GenerateStaticId more than once. Output a warning rather than an error as this can happen on 32bit systems. Signed-off-by: Colm Donelan <Colm.Donelan@arm.com> Change-Id: I47e9a1d9ff09c25da24abb4b0efe63d3000aa1c5
2020-05-13IVGCVSW-4775 Centralizing definition of ThreadIdSize to fix MLCE-189Colm Donelan
* Introduce a constant definition of the size of a POSIX thread ID. * Update all code to use the new constant definition. * Update all unit tests to use the new constant definition. Signed-off-by: Colm Donelan <Colm.Donelan@arm.com> Change-Id: I836ab1a77ed13f774e66fd7b425923c24b9a6dab
2020-05-12IVGCVSW-4731 Move Packet.hpp to profiling/common/includeFinn Williams
* Refactor profiling cmake to fix inconsistencies/issues with includes Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I0836762d4c72e25754a28162ec54c8e332422a02
2020-05-08IVGCVSW-4794 Fix ArmNN Counters incorrectly set to deltaFinn Williams
* Change all ArmNN counters to absolute * Fix bug in the DirectoryCaptureCommandHandler where the offsets of the m_CounterClass and m_CounterInterpolation were swapped * Fix bug in the DirectoryCaptureCommandHandler where the offsets of the m_DeviceUid and m_CounterSetUid were swapped Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: If396628306757088aa0acf739fb3e4f240b4394b
2020-05-07IVGCVSW-4730 Remove the duplication of PIPE_MAGIC in the code baseFinn Williams
Change-Id: I41c6e917b29eee33360758b6c5afe5dadba89093 Signed-off-by: Finn Williams <Finn.Williams@arm.com>
2020-05-01Update the CounterDirectory Packet offsets to be relative to the start of ↵Finn Williams
the table containing that offset * IVGCVSW-4763 Update the event pointer table offsets * IVGCVSW-4764 Update the event record block offsets * IVGCVSW-4765 Update the device name offset * IVGCVSW-4766 Update the counter set name offset * IVGCVSW-4767 Update device pointer table offsets * IVGCVSW-4768 Update the counter set pointer table offsets * IVGCVSW-4769 Update the category pointer table offsets Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I6e815ae5b16478fc5ec760caf704451fe5f84a29
2020-04-30IVGCVSW-4760 Change the offsets in the counter directory body_header to be ↵Finn Williams
from the start of the packet body Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: Ie5ef5e410f3b06f1c80c7c5ea2057f5008cf09ed
2020-04-30IVGCVSW-4732 Move NetworkSockets class needs to profiling/commonFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: Ie1bd73e6c1818277943e70eaf73b4d9a26da4758
2020-04-27IVGCVSW-4594 Refactor the GatordMockService and GatordMockMain to extract a ↵Finn Williams
BasePipeServer Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I03c1b46104dadc491dba6075865e486f78aa60fa
2020-04-27IVGCVSW-4595 Add IFileOnlyPacketHandlers to file only profiling connectionJim Flynn
Change-Id: Ib49a8cbbf323da4109cdab9750e6c4d276e484b7 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2020-04-27IVGCVSW-4722 Add missing m_TimelineEnabled bool to ↵Finn Williams
ConnectionAcknowledgedCommandHandler * Added timeline bool to ConnectionAcknowledgedCommandHandler * Added option to enable timeline profiling in ExecuteNetwork * Added CommandHandler stub to allow gatordMock to ignore packets Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I314f9411e0079cba8f103d3b8a89f2bf38bb21ab
2020-04-22IVGCVSW-4719 Remove possible zeros from SendStreamMetaDataPacket offsetsFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I8d7ee408c4c73be9b42bb739254b95c476e0e38c
2020-04-20IVGCVSW-4513 Remove boost/algorithm/string *David Monahan
* Removed split, classification, trim, string, join, contains * Added StringUtils.hpp to replace the removed Boost String functionality Signed-off-by: David Monahan <david.monahan@arm.com> Change-Id: I8aa938dc3942cb65c512cccb2c069da66aa24668
2020-04-16IVGCVSW-4701 Make the GUIDGenerator thread safeFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: Ide55731c51a8b77d71bfa4f3f7f0d122bb643d87
2020-04-16IVGCVSW-4699 Force timestamps to always be in nanosecondsFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: Id0fef58ff06caae258d9a77132a7ab1ae0c23060
2020-04-10IVGCVSW-4666 Call EnableProfiling when state switches to activeFinn Williams
* Move the call to EnableProfiling() into ConnectionAcknowledgedHandler * Fix an issue with MockGatord forcing some command handlers to be quiet * Add some small unrelated improvements and typo fixes to the periodic counter command handlers Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I9e6066b78d1f782cfaf27c11571c0ec5cb5d126f
2020-04-10IVGCVSW-4483 Remove boost::polymorphic_downcastJan Eilers
* exchange boost::polymorphic_downcast with armnn::PolymorphicDowncast * remove unnecessary includes of boost::polymorphic_downcast Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: Ie603fb82860fe05fee547dc78073230cc62b2e1f
2020-04-06IVGCVSW-4485 Remove Boost assertNarumol Prangnawarat
* Change boost assert to armnn assert * Change include file to armnn assert * Fix ARMNN_ASSERT_MSG issue with multiple conditions * Change BOOST_ASSERT to BOOST_TEST where appropriate * Remove unused include statements Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I5d0fa3a37b7c1c921216de68f0073aa34702c9ff
2020-04-02IVGCVSW-4455 Add an Activate and Deactivate control packet to the protocolKeith Davis
* Add Activate/Deactivate command handlers * Add IReportStructure, INotifyBackends single function interfaces * Add overrided mechanism to report structure in Runtime.cpp * Add overrided mechanism to notify backends in ProfilingService.cpp * Add optional IReportStructure argument to ProfilingService constructor for use in ActivateTimelineReportingCommandHandler * Refactoring and tidying up indentation * Removal of unused code in ProfilingUtils.cpp and ProfilingService.cpp * Added GatordMock end to end test * Fixed an issue with SendCounterPacket sending duplicate packets * Fixed an issue with DirectoryCaptureCommandHandler handling of Optional Signed-off-by: Keith Davis <keith.davis@arm.com> Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I5ef1b74171459bfc649861dedf99921d22c9e63f
2020-03-26IVGCVSW-4526 Fix UnitTest errors when running on raspberry piJan Eilers
* The std::thread::id is included in some timeline packages of the profiler. But the size of thread::id is platform dependent. That's why some tests expected a wrong package size Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: I4794ebbdda2d75ed5be7112f6a3bf2e5f14f221b
2020-03-24IVGCVSW-4596 Fix BufferManager's packet orderFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I35e0a891cd69f2c130b8886460089c441d8e666d
2020-03-20IVGCVSW-4589 Add call to SendWellKnownLabelsAndEventClassesFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: Ia42f962ba53d7684f5ad75f5b1b91e2d9f3a2f9c
2020-03-20IVGCVSW-4587 ArmNN failing to build in the Internal OOBSadik Armagan
* ProfilingService reference field not required in TimelineUtilityMethods Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I83ca13e577d35fb9497d7df1535607ec66c201bf
2020-03-20IVGCVSW-4582 Undefined reference to GetProfilingService causes failure in ↵Sadik Armagan
the Backends CI job * Enable the GetProfilingService() function to BackendProfilingTests and ProfilingTestUtils Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I32e3625db0f465883f2ec27fb7c2fad4e91b6306
2020-03-19MLECO-755: ArmNN: Add file format external profiling optionIsabella Gottardi
* Added new m_FileFormat variable in ExternalProfilingOptions * Added new profiling option to ExecuteNetwork * Added check for file format in ProfilingConnectionFactory * Added test in profiling tests Change-Id: I0e9cb8ecac919dc0ed03dcf77324a65621f07ae7 Signed-off-by: Isabella Gottardi <isabella.gottardi@arm.com>
2020-03-18IVGCVSW-4463 Change ProfilingService to a member of runtime from a singletonSadik Armagan
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I345c39a10a4693a500aa1687d9a5cee76da791c3
2020-03-11IVGCVSW-4542 Refactor TimelineDecoder parsing of TimelinePacketsKeith Davis
* Added test to add multiple SwTraceMessages to the buffer * Updated TimelineCaptureCommandHandler to iterate until there are no more read functions in the packet * Further commenting Change-Id: I41d5acf4f7288ce5a51ffd10a5eea335ac3026ec Signed-off-by: Keith Davis <keith.davis@arm.com>
2020-03-10IVGCVSW-4482 Remove boost::ignore_unusedJan Eilers
!referencetests:229377 Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: Ia9b360b4a057fe7bbce5b268092627c09a0dba82
2020-03-09IVGCVSW-4541 Modify Timeline Packet constructionKeith Davis
* Changed TimelinePacket encoding so that there is only one header for multiple timeline swtrace messages * Refactored function names to have more suitable description * Refactored CodeStyle to coincide with ArmNN coding standards * Refactored profiling test names to be descriptive * Refactored ErrorCode name to TimelineStatus * Updated existing unit tests Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: I83bd4bb9e7393617bca97eba96a6e1388916e5b0
2020-03-04IVGCVSW-4163 Enhance the error handling in the ReadPacket functionSadik Armagan
* Introduced armnn::SocketConnectionException with fields error no and socket info. Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: Ideb85b00771864e332226635aeff3096fbea8e5f
2020-02-28IVGCVSW-4454 Remove the CounterSet and Device fields from CategorySadik Armagan
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I721f59cd1f6d068e02dabd62c42871a43be9d934
2020-02-17IVGCVSW-4320 Implement the bulk reporting of counter values from backendsSadik Armagan
* Implemented unit test for ReportCounters function in BackendProfiling Signed-off-by: Jim Flynn <jim.flynn@arm.com> Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: Iec342a96060c8ef6090e6cc67bda8a7a3e890c50
2020-02-16IVGCVSW-4320 Implement ReportCounters in BackendProfilingJim Flynn
Change-Id: Idd545079f6331bb4241709fa1534635f3fdf610b Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2020-02-14IVGCVSW-4338 Implement the Activation of Counters in backendsFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I4a2465f06e046f78242ff0a246c651638b205498
2020-02-13IVGCVSW-4400 Backend Counter Registry FunctionalityDavid Monahan
* Adding BackendProfilingContext to the MockBackend * Made IBackendProfilingContext pure Virtual * Added UnitTest using MockBackend for testing Backend Counter Registration * Moved Registry of backend counters from Initialize() to AddBackendProfilingContext() * Added m_MaxGlobalCounterId to ProfilingService * Removed automatic registration of MockBack in BackendRegistry() Signed-off-by: David Monahan <david.monahan@arm.com> Change-Id: Ie1c6c31e56d1ac7079d6116ecad041961014aedc
2020-02-10IVGCVSW-4424 Set minimum timeout for SendThread in WaitingForAck stateFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: Iee7de5040e355933b7e14a39d44e9d51b30427c8
2020-02-10IVGCVSW-4328 BufferManager running out of buffers crashes applicationSadik Armagan
* Refactored SendCounterPacket classes, separated SendCounterPacket from Send thread * Created ISendThread.hpp, IConsumer, SendThread.hpp and SendThread.cpp * Injected IConsumer to BufferManager to notify SendThread when packet is ready to read Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I80f0bb8b8401c6bfd1611f7760217c6fe35d7ad8
2020-02-10IVGCVSW-4400 Adding invocation of the back to Profiling Service initialisationDavid Monahan
Signed-off-by: David Monahan <david.monahan@arm.com> Change-Id: I5f3bb4c9cde1cca11b8f6201ab559c2960eb32c0