diff options
author | Colm Donelan <Colm.Donelan@arm.com> | 2020-01-24 16:27:02 +0000 |
---|---|---|
committer | Colm Donelan <Colm.Donelan@arm.com> | 2020-01-28 12:01:42 +0000 |
commit | 5ccb33da0565e0bf2279318f1e7ad597afcc0367 (patch) | |
tree | 0266241d45ea8d0b0055c78ee0f28ee8cbc3a462 | |
parent | 03b6b410321923bac7ed2eb1507f524953c9a464 (diff) | |
download | armnn-5ccb33da0565e0bf2279318f1e7ad597afcc0367.tar.gz |
IVGCVSW-4316 Promote ISendTimelinePacket and IProfilingGuidGenerator
As part of IVGCVSW-4316 we need to expose ISendTimelinePacket and
IProfilingGuidGenerator to enable them to be used by backends for
profiling. This also required moving ProfilingRelationshipType from
ProfilingUtils.
Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Change-Id: I58cc64e32ecfffa5231c9d2028522ed58d0ddf31
-rw-r--r-- | CMakeLists.txt | 4 | ||||
-rw-r--r-- | include/armnn/profiling/IProfilingGuidGenerator.hpp (renamed from src/profiling/IProfilingGuidGenerator.hpp) | 0 | ||||
-rw-r--r-- | include/armnn/profiling/ISendTimelinePacket.hpp (renamed from src/profiling/ISendTimelinePacket.hpp) | 25 | ||||
-rw-r--r-- | src/profiling/ConnectionAcknowledgedCommandHandler.hpp | 2 | ||||
-rw-r--r-- | src/profiling/ProfilingGuidGenerator.hpp | 2 | ||||
-rw-r--r-- | src/profiling/ProfilingUtils.hpp | 11 | ||||
-rw-r--r-- | src/profiling/RequestCounterDirectoryCommandHandler.hpp | 2 | ||||
-rw-r--r-- | src/profiling/SendTimelinePacket.hpp | 2 | ||||
-rw-r--r-- | src/profiling/TimelinePacketWriterFactory.hpp | 2 | ||||
-rw-r--r-- | src/profiling/TimelineUtilityMethods.hpp | 2 |
10 files changed, 25 insertions, 27 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 4c8c3870c2..b1af90d8af 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -242,6 +242,8 @@ list(APPEND armnn_sources include/armnn/TypesUtils.hpp include/armnn/Utils.hpp include/armnn/Version.hpp + include/armnn/profiling/IProfilingGuidGenerator.hpp + include/armnn/profiling/ISendTimelinePacket.hpp src/armnn/layers/LayerCloneBase.hpp src/armnn/layers/LayerWithParameters.hpp src/armnn/layers/ActivationLayer.hpp @@ -468,12 +470,10 @@ list(APPEND armnn_sources src/profiling/ICounterDirectory.hpp src/profiling/ICounterValues.hpp src/profiling/ISendCounterPacket.hpp - src/profiling/ISendTimelinePacket.hpp src/profiling/IPacketBuffer.hpp src/profiling/IPeriodicCounterCapture.hpp src/profiling/IProfilingConnection.hpp src/profiling/IProfilingConnectionFactory.hpp - src/profiling/IProfilingGuidGenerator.hpp src/profiling/LabelsAndEventClasses.cpp src/profiling/LabelsAndEventClasses.hpp src/profiling/Packet.hpp diff --git a/src/profiling/IProfilingGuidGenerator.hpp b/include/armnn/profiling/IProfilingGuidGenerator.hpp index fb9f7401fb..fb9f7401fb 100644 --- a/src/profiling/IProfilingGuidGenerator.hpp +++ b/include/armnn/profiling/IProfilingGuidGenerator.hpp diff --git a/src/profiling/ISendTimelinePacket.hpp b/include/armnn/profiling/ISendTimelinePacket.hpp index a95413455a..49a9fcf40e 100644 --- a/src/profiling/ISendTimelinePacket.hpp +++ b/include/armnn/profiling/ISendTimelinePacket.hpp @@ -5,12 +5,10 @@ #pragma once -#include "ProfilingUtils.hpp" - #include <algorithm> #include <string> -#include <vector> #include <thread> +#include <vector> namespace armnn { @@ -18,10 +16,19 @@ namespace armnn namespace profiling { +enum class ProfilingRelationshipType +{ + RetentionLink, /// Head retains(parents) Tail + ExecutionLink, /// Head execution start depends on Tail execution completion + DataLink, /// Head uses data of Tail + LabelLink /// Head uses label Tail (Tail MUST be a guid of a label). +}; + class ISendTimelinePacket { public: - virtual ~ISendTimelinePacket() {} + virtual ~ISendTimelinePacket() + {} /// Commits the current buffer and reset the member variables virtual void Commit() = 0; @@ -30,9 +37,8 @@ public: virtual void SendTimelineEntityBinaryPacket(uint64_t profilingGuid) = 0; /// Create and write a TimelineEventBinaryPacket from the parameters to the buffer. - virtual void SendTimelineEventBinaryPacket(uint64_t timestamp, - std::thread::id threadId, - uint64_t profilingGuid) = 0; + virtual void + SendTimelineEventBinaryPacket(uint64_t timestamp, std::thread::id threadId, uint64_t profilingGuid) = 0; /// Create and write a TimelineEventClassBinaryPacket from the parameters to the buffer. virtual void SendTimelineEventClassBinaryPacket(uint64_t profilingGuid) = 0; @@ -50,7 +56,6 @@ public: uint64_t tailGuid) = 0; }; -} // namespace profiling - -} // namespace armnn +} // namespace profiling +} // namespace armnn diff --git a/src/profiling/ConnectionAcknowledgedCommandHandler.hpp b/src/profiling/ConnectionAcknowledgedCommandHandler.hpp index 05559a3f9f..6054306da8 100644 --- a/src/profiling/ConnectionAcknowledgedCommandHandler.hpp +++ b/src/profiling/ConnectionAcknowledgedCommandHandler.hpp @@ -7,7 +7,7 @@ #include "CommandHandlerFunctor.hpp" #include "ISendCounterPacket.hpp" -#include "ISendTimelinePacket.hpp" +#include "armnn/profiling/ISendTimelinePacket.hpp" #include "Packet.hpp" #include "ProfilingStateMachine.hpp" diff --git a/src/profiling/ProfilingGuidGenerator.hpp b/src/profiling/ProfilingGuidGenerator.hpp index 97de4a88e5..a31903585c 100644 --- a/src/profiling/ProfilingGuidGenerator.hpp +++ b/src/profiling/ProfilingGuidGenerator.hpp @@ -5,7 +5,7 @@ #pragma once -#include "IProfilingGuidGenerator.hpp" +#include "armnn/profiling/IProfilingGuidGenerator.hpp" #include <functional> diff --git a/src/profiling/ProfilingUtils.hpp b/src/profiling/ProfilingUtils.hpp index 9bbe421817..a63f255aea 100644 --- a/src/profiling/ProfilingUtils.hpp +++ b/src/profiling/ProfilingUtils.hpp @@ -6,6 +6,7 @@ #pragma once #include <armnn/Exceptions.hpp> +#include <armnn/profiling/ISendTimelinePacket.hpp> #include "ICounterDirectory.hpp" #include "IPacketBuffer.hpp" @@ -16,8 +17,8 @@ #include <cstring> #include <memory> #include <string> -#include <vector> #include <thread> +#include <vector> namespace armnn { @@ -197,14 +198,6 @@ enum class TimelinePacketStatus BufferExhaustion }; -enum class ProfilingRelationshipType -{ - RetentionLink, /// Head retains(parents) Tail - ExecutionLink, /// Head execution start depends on Tail execution completion - DataLink, /// Head uses data of Tail - LabelLink /// Head uses label Tail (Tail MUST be a guid of a label). -}; - uint32_t CalculateSizeOfPaddedSwString(const std::string& str); SwTraceMessage ReadSwTraceMessage(const unsigned char*, unsigned int& offset); diff --git a/src/profiling/RequestCounterDirectoryCommandHandler.hpp b/src/profiling/RequestCounterDirectoryCommandHandler.hpp index 99c035240c..9ceca3f643 100644 --- a/src/profiling/RequestCounterDirectoryCommandHandler.hpp +++ b/src/profiling/RequestCounterDirectoryCommandHandler.hpp @@ -7,7 +7,7 @@ #include "CommandHandlerFunctor.hpp" #include "ISendCounterPacket.hpp" -#include "ISendTimelinePacket.hpp" +#include "armnn/profiling/ISendTimelinePacket.hpp" #include "Packet.hpp" #include "ProfilingStateMachine.hpp" diff --git a/src/profiling/SendTimelinePacket.hpp b/src/profiling/SendTimelinePacket.hpp index 4b2e06328b..737a1aa9a7 100644 --- a/src/profiling/SendTimelinePacket.hpp +++ b/src/profiling/SendTimelinePacket.hpp @@ -6,7 +6,7 @@ #pragma once #include "IBufferManager.hpp" -#include "ISendTimelinePacket.hpp" +#include "armnn/profiling/ISendTimelinePacket.hpp" #include "ProfilingUtils.hpp" #include <boost/assert.hpp> diff --git a/src/profiling/TimelinePacketWriterFactory.hpp b/src/profiling/TimelinePacketWriterFactory.hpp index 1bbd3fd60f..a1e9945303 100644 --- a/src/profiling/TimelinePacketWriterFactory.hpp +++ b/src/profiling/TimelinePacketWriterFactory.hpp @@ -6,7 +6,7 @@ #pragma once #include "IBufferManager.hpp" -#include "ISendTimelinePacket.hpp" +#include "armnn/profiling/ISendTimelinePacket.hpp" #include <memory> diff --git a/src/profiling/TimelineUtilityMethods.hpp b/src/profiling/TimelineUtilityMethods.hpp index 5b00ec8738..c33dd92193 100644 --- a/src/profiling/TimelineUtilityMethods.hpp +++ b/src/profiling/TimelineUtilityMethods.hpp @@ -5,7 +5,7 @@ #pragma once -#include "ISendTimelinePacket.hpp" +#include "armnn/profiling/ISendTimelinePacket.hpp" #include <armnn/Types.hpp> namespace armnn |