aboutsummaryrefslogtreecommitdiff
path: root/tests/profiling/gatordmock/GatordMockService.hpp
diff options
context:
space:
mode:
authorColm Donelan <Colm.Donelan@arm.com>2019-11-14 14:19:07 +0000
committerMatteo Martincigh <matteo.martincigh@arm.com>2019-11-15 17:11:01 +0000
commit0270524f96c4e21a755d1c71e46c4e8665918237 (patch)
tree1ce1fc3fd51f568e15e84e0281410b6b53de2fe5 /tests/profiling/gatordmock/GatordMockService.hpp
parent9723d0243463e3a32ed11ae1c38298343b4e8818 (diff)
downloadarmnn-0270524f96c4e21a755d1c71e46c4e8665918237.tar.gz
IVGCVSW-4129 Fix thread starvation due to low capture periods
* Set default capture period to 10mSec. * Validate capture period in PeriodicCounterSelectionCommandHandler pull it up to 10mSec if it is lower. * Fix segmentation fault in GatordMock when receive thread closes. Signed-off-by: Colm Donelan <Colm.Donelan@arm.com> Change-Id: I9f7ddc70bd99c102c5baef872d28329976a4dc07
Diffstat (limited to 'tests/profiling/gatordmock/GatordMockService.hpp')
-rw-r--r--tests/profiling/gatordmock/GatordMockService.hpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/tests/profiling/gatordmock/GatordMockService.hpp b/tests/profiling/gatordmock/GatordMockService.hpp
index a77d7ff480..c3afc333ca 100644
--- a/tests/profiling/gatordmock/GatordMockService.hpp
+++ b/tests/profiling/gatordmock/GatordMockService.hpp
@@ -41,6 +41,7 @@ public:
GatordMockService(armnn::profiling::CommandHandlerRegistry& registry, bool echoPackets)
: m_HandlerRegistry(registry)
, m_EchoPackets(echoPackets)
+ , m_CloseReceivingThread(false)
{
m_PacketsReceivedCount.store(0, std::memory_order_relaxed);
}
@@ -86,6 +87,12 @@ public:
/// command handling code is added.
void WaitForReceivingThread();
+ // @return true only if the receive thread is closed or closing.
+ bool ReceiveThreadRunning()
+ {
+ return !m_CloseReceivingThread.load();
+ }
+
/// Send the counter list to ArmNN.
void SendPeriodicCounterSelectionList(uint32_t period, std::vector<uint16_t> counters);