ArmNN
 20.02
ProfilingUtils.hpp File Reference
#include <armnn/Exceptions.hpp>
#include <armnn/profiling/ISendTimelinePacket.hpp>
#include "ICounterDirectory.hpp"
#include "IPacketBuffer.hpp"
#include <boost/numeric/conversion/cast.hpp>
#include <algorithm>
#include <cstring>
#include <memory>
#include <string>
#include <thread>
#include <vector>

Go to the source code of this file.

Classes

struct  SwTraceHeader
 
struct  SwTraceMessage
 
struct  SwTraceCharPolicy
 
struct  SwTraceNameCharPolicy
 
struct  SwTraceTypeCharPolicy
 
class  BufferExhaustion
 

Namespaces

 armnn
 Copyright (c) 2020 ARM Limited.
 
 armnn::profiling
 
 std
 

Enumerations

enum  TimelinePacketStatus { Ok, Error, BufferExhaustion }
 

Functions

template<typename SwTracePolicy >
bool IsValidSwTraceString (const std::string &s)
 
template<typename SwTracePolicy >
bool StringToSwTraceString (const std::string &s, std::vector< uint32_t > &outputBuffer)
 
template<typename SwTracePolicy , typename SwTraceBuffer = std::vector<uint32_t>>
bool ConvertDirectoryComponent (const std::string &directoryComponent, SwTraceBuffer &swTraceBuffer)
 
uint16_t GetNextUid (bool peekOnly)
 
std::vector< uint16_t > GetNextCounterUids (uint16_t firstUid, uint16_t cores)
 
void WriteBytes (const IPacketBuffer &packetBuffer, unsigned int offset, const void *value, unsigned int valueSize)
 
uint32_t ConstructHeader (uint32_t packetFamily, uint32_t packetId)
 
uint32_t ConstructHeader (uint32_t packetFamily, uint32_t packetClass, uint32_t packetType)
 
void WriteUint64 (const IPacketBufferPtr &packetBuffer, unsigned int offset, uint64_t value)
 
void WriteUint32 (const IPacketBufferPtr &packetBuffer, unsigned int offset, uint32_t value)
 
void WriteUint16 (const IPacketBufferPtr &packetBuffer, unsigned int offset, uint16_t value)
 
void WriteUint8 (const IPacketBufferPtr &packetBuffer, unsigned int offset, uint8_t value)
 
void WriteBytes (unsigned char *buffer, unsigned int offset, const void *value, unsigned int valueSize)
 
void WriteUint64 (unsigned char *buffer, unsigned int offset, uint64_t value)
 
void WriteUint32 (unsigned char *buffer, unsigned int offset, uint32_t value)
 
void WriteUint16 (unsigned char *buffer, unsigned int offset, uint16_t value)
 
void WriteUint8 (unsigned char *buffer, unsigned int offset, uint8_t value)
 
void ReadBytes (const IPacketBufferPtr &packetBuffer, unsigned int offset, unsigned int valueSize, uint8_t outValue[])
 
uint64_t ReadUint64 (const IPacketBufferPtr &packetBuffer, unsigned int offset)
 
uint32_t ReadUint32 (const IPacketBufferPtr &packetBuffer, unsigned int offset)
 
uint16_t ReadUint16 (const IPacketBufferPtr &packetBuffer, unsigned int offset)
 
uint8_t ReadUint8 (const IPacketBufferPtr &packetBuffer, unsigned int offset)
 
void ReadBytes (const unsigned char *buffer, unsigned int offset, unsigned int valueSize, uint8_t outValue[])
 
uint64_t ReadUint64 (const unsigned char *buffer, unsigned int offset)
 
uint32_t ReadUint32 (const unsigned char *buffer, unsigned int offset)
 
uint16_t ReadUint16 (const unsigned char *buffer, unsigned int offset)
 
uint8_t ReadUint8 (const unsigned char *buffer, unsigned int offset)
 
std::pair< uint32_t, uint32_t > CreateTimelinePacketHeader (uint32_t packetFamily, uint32_t packetClass, uint32_t packetType, uint32_t streamId, uint32_t sequenceNumbered, uint32_t dataLength)
 Creates a timeline packet header. More...
 
std::string GetSoftwareInfo ()
 
std::string GetSoftwareVersion ()
 
std::string GetHardwareVersion ()
 
std::string GetProcessName ()
 
uint32_t CalculateSizeOfPaddedSwString (const std::string &str)
 
SwTraceMessage ReadSwTraceMessage (const unsigned char *packetBuffer, unsigned int &offset)
 
TimelinePacketStatus WriteTimelineLabelBinaryPacket (uint64_t profilingGuid, const std::string &label, unsigned char *buffer, unsigned int remainingBufferSize, unsigned int &numberOfBytesWritten)
 
TimelinePacketStatus WriteTimelineEntityBinary (uint64_t profilingGuid, unsigned char *buffer, unsigned int remainingBufferSize, unsigned int &numberOfBytesWritten)
 
TimelinePacketStatus WriteTimelineRelationshipBinary (ProfilingRelationshipType relationshipType, uint64_t relationshipGuid, uint64_t headGuid, uint64_t tailGuid, unsigned char *buffer, unsigned int remainingBufferSize, unsigned int &numberOfBytesWritten)
 
TimelinePacketStatus WriteTimelineMessageDirectoryPackage (unsigned char *buffer, unsigned int remainingBufferSize, unsigned int &numberOfBytesWritten)
 
TimelinePacketStatus WriteTimelineEventClassBinary (uint64_t profilingGuid, unsigned char *buffer, unsigned int remainingBufferSize, unsigned int &numberOfBytesWritten)
 
TimelinePacketStatus WriteTimelineEventBinary (uint64_t timestamp, std::thread::id threadId, uint64_t profilingGuid, unsigned char *buffer, unsigned int remainingBufferSize, unsigned int &numberOfBytesWritten)
 
std::string CentreAlignFormatting (const std::string &stringToPass, const int spacingWidth)
 
void PrintCounterDirectory (ICounterDirectory &counterDirectory)
 
uint64_t GetTimestamp ()
 
bool operator== (const std::vector< uint8_t > &left, std::thread::id right)