ArmNN
 21.08
CounterIdMap Class Reference

#include <CounterIdMap.hpp>

Inheritance diagram for CounterIdMap:
ICounterMappings IRegisterCounterMapping

Public Member Functions

 CounterIdMap ()=default
 
virtual ~CounterIdMap ()
 
void RegisterMapping (uint16_t globalCounterId, uint16_t backendCounterId, const armnn::BackendId &backendId) override
 
void Reset () override
 
uint16_t GetGlobalId (uint16_t backendCounterId, const armnn::BackendId &backendId) const override
 
const std::pair< uint16_t, armnn::BackendId > & GetBackendId (uint16_t globalCounterId) const override
 
- Public Member Functions inherited from ICounterMappings
virtual ~ICounterMappings ()
 
- Public Member Functions inherited from IRegisterCounterMapping
virtual ~IRegisterCounterMapping ()
 

Detailed Description

Definition at line 33 of file CounterIdMap.hpp.

Constructor & Destructor Documentation

◆ CounterIdMap()

CounterIdMap ( )
default

◆ ~CounterIdMap()

virtual ~CounterIdMap ( )
inlinevirtual

Definition at line 38 of file CounterIdMap.hpp.

References ICounterMappings::GetBackendId(), and ICounterMappings::GetGlobalId().

38 {}

Member Function Documentation

◆ GetBackendId()

const std::pair< uint16_t, armnn::BackendId > & GetBackendId ( uint16_t  globalCounterId) const
overridevirtual

Implements ICounterMappings.

Definition at line 43 of file CounterIdMap.cpp.

44 {
45  auto it = m_GlobalCounterIdMap.find(globalCounterId);
46  if (it == m_GlobalCounterIdMap.end())
47  {
48  std::stringstream ss;
49  ss << "No Global Counter ID [" << globalCounterId << "] registered";
50  throw armnn::Exception(ss.str());
51  }
52  return it->second;
53 }
Base class for all ArmNN exceptions so that users can filter to just those.
Definition: Exceptions.hpp:46

◆ GetGlobalId()

uint16_t GetGlobalId ( uint16_t  backendCounterId,
const armnn::BackendId backendId 
) const
overridevirtual

Implements ICounterMappings.

Definition at line 30 of file CounterIdMap.cpp.

31 {
32  std::pair<uint16_t, armnn::BackendId> backendIdPair(backendCounterId, backendId);
33  auto it = m_BackendCounterIdMap.find(backendIdPair);
34  if (it == m_BackendCounterIdMap.end())
35  {
36  std::stringstream ss;
37  ss << "No Backend Counter [" << backendIdPair.second << ":" << backendIdPair.first << "] registered";
38  throw armnn::Exception(ss.str());
39  }
40  return it->second;
41 }
Base class for all ArmNN exceptions so that users can filter to just those.
Definition: Exceptions.hpp:46

◆ RegisterMapping()

void RegisterMapping ( uint16_t  globalCounterId,
uint16_t  backendCounterId,
const armnn::BackendId backendId 
)
overridevirtual

Implements IRegisterCounterMapping.

Definition at line 15 of file CounterIdMap.cpp.

Referenced by TEST_SUITE().

18 {
19  std::pair<uint16_t, armnn::BackendId> backendIdPair(backendCounterId, backendId);
20  m_GlobalCounterIdMap[globalCounterId] = backendIdPair;
21  m_BackendCounterIdMap[backendIdPair] = globalCounterId;
22 }

◆ Reset()

void Reset ( )
overridevirtual

Implements IRegisterCounterMapping.

Definition at line 24 of file CounterIdMap.cpp.

Referenced by ProfilingService::GetSendTimelinePacket().

25 {
26  m_GlobalCounterIdMap.clear();
27  m_BackendCounterIdMap.clear();
28 }

The documentation for this class was generated from the following files: