aboutsummaryrefslogtreecommitdiff
path: root/src/profiling
diff options
context:
space:
mode:
authorJan Eilers <jan.eilers@arm.com>2020-03-26 12:04:54 +0000
committerJan Eilers <jan.eilers@arm.com>2020-03-26 12:04:54 +0000
commita10e2a26b20b124aaa03f20554172d88683257f7 (patch)
tree6ca5740a267857e94aa064500e582667ff2ed325 /src/profiling
parentaf1c63b98df76caa89ecc8d599de5fe1e0b60d88 (diff)
downloadarmnn-a10e2a26b20b124aaa03f20554172d88683257f7.tar.gz
IVGCVSW-4526 Fix UnitTest errors when running on raspberry pi
* 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
Diffstat (limited to 'src/profiling')
-rw-r--r--src/profiling/test/ProfilingTestUtils.cpp6
-rw-r--r--src/profiling/test/ProfilingTests.cpp4
-rw-r--r--src/profiling/test/SendTimelinePacketTests.cpp4
-rw-r--r--src/profiling/test/TimelinePacketTests.cpp5
-rw-r--r--src/profiling/test/TimelineUtilityMethodsTests.cpp6
5 files changed, 15 insertions, 10 deletions
diff --git a/src/profiling/test/ProfilingTestUtils.cpp b/src/profiling/test/ProfilingTestUtils.cpp
index 74e140c093..244051c785 100644
--- a/src/profiling/test/ProfilingTestUtils.cpp
+++ b/src/profiling/test/ProfilingTestUtils.cpp
@@ -909,7 +909,9 @@ void VerifyPostOptimisationStructureTestImpl(armnn::BackendId backendId)
// Validate inference data
size = inferenceReadableBuffer->GetSize();
- BOOST_CHECK(size == 1596);
+
+ unsigned int threadId_size = sizeof(std::thread::id); // Is platform dependent
+ BOOST_CHECK(size == 1516 + 10 * threadId_size);
readableData = inferenceReadableBuffer->GetReadableData();
BOOST_CHECK(readableData != nullptr);
@@ -917,7 +919,7 @@ void VerifyPostOptimisationStructureTestImpl(armnn::BackendId backendId)
offset = 0;
// Verify Header
- VerifyTimelineHeaderBinary(readableData, offset, 1588);
+ VerifyTimelineHeaderBinary(readableData, offset, 1508 + 10 * threadId_size);
// Inference timeline trace
// Inference entity
diff --git a/src/profiling/test/ProfilingTests.cpp b/src/profiling/test/ProfilingTests.cpp
index a631cb2356..74b93d7c4f 100644
--- a/src/profiling/test/ProfilingTests.cpp
+++ b/src/profiling/test/ProfilingTests.cpp
@@ -692,7 +692,7 @@ BOOST_AUTO_TEST_CASE(CheckProfilingServiceCounterValues)
ProfilingService* profilingServicePtr = &profilingService;
std::vector<std::thread> writers;
- for (int i = 0; i < 100; ++i)
+ for (int i = 0; i < 10; ++i)
{
// Increment and decrement the first counter
writers.push_back(std::thread(&ProfilingService::IncrementCounterValue,
@@ -719,7 +719,7 @@ BOOST_AUTO_TEST_CASE(CheckProfilingServiceCounterValues)
BOOST_CHECK(counterValue ==
(profilingService.GetCounterValue(armnn::profiling::UNREGISTERED_BACKENDS)
- profilingService.GetCounterValue(armnn::profiling::REGISTERED_BACKENDS)));
- BOOST_CHECK(profilingService.GetCounterValue(armnn::profiling::INFERENCES_RUN) == 500);
+ BOOST_CHECK(profilingService.GetCounterValue(armnn::profiling::INFERENCES_RUN) == 50);
BOOST_CHECK_NO_THROW(profilingService.SetCounterValue(armnn::profiling::UNREGISTERED_BACKENDS, 4));
BOOST_CHECK_NO_THROW(counterValue = profilingService.GetCounterValue(armnn::profiling::UNREGISTERED_BACKENDS));
diff --git a/src/profiling/test/SendTimelinePacketTests.cpp b/src/profiling/test/SendTimelinePacketTests.cpp
index c03e745574..98b161f65e 100644
--- a/src/profiling/test/SendTimelinePacketTests.cpp
+++ b/src/profiling/test/SendTimelinePacketTests.cpp
@@ -210,7 +210,7 @@ BOOST_AUTO_TEST_CASE(SendEventClassAfterTimelineEntityPacketTest)
{
unsigned int uint32_t_size = sizeof(uint32_t);
unsigned int uint64_t_size = sizeof(uint64_t);
- unsigned int threadId_size = sizeof(std::thread::id);
+ unsigned int threadId_size = sizeof(std::thread::id); // Is platform dependent
MockBufferManager bufferManager(512);
TimelinePacketWriterFactory timelinePacketWriterFactory(bufferManager);
@@ -337,7 +337,7 @@ BOOST_AUTO_TEST_CASE(SendEventClassAfterTimelineEntityPacketTest)
uint32_t eventBinaryPacketSequenceNumbered = (eventBinaryPacketHeaderWord1 >> 24) & 0x00000001;
uint32_t eventBinaryPacketDataLength = (eventBinaryPacketHeaderWord1 >> 0) & 0x00FFFFFF;
BOOST_CHECK(eventBinaryPacketSequenceNumbered == 0);
- BOOST_CHECK(eventBinaryPacketDataLength == 28);
+ BOOST_CHECK(eventBinaryPacketDataLength == 20 + threadId_size);
// Check the decl_id
offset += uint32_t_size;
diff --git a/src/profiling/test/TimelinePacketTests.cpp b/src/profiling/test/TimelinePacketTests.cpp
index 1d5d45176c..5401712205 100644
--- a/src/profiling/test/TimelinePacketTests.cpp
+++ b/src/profiling/test/TimelinePacketTests.cpp
@@ -739,11 +739,12 @@ BOOST_AUTO_TEST_CASE(TimelineEventPacketTestFullConstructionOfData)
boost::numeric_cast<unsigned int>(buffer.size()),
numberOfBytesWritten);
BOOST_CHECK(result == TimelinePacketStatus::Ok);
- BOOST_CHECK(numberOfBytesWritten == 28);
unsigned int uint32_t_size = sizeof(uint32_t);
unsigned int uint64_t_size = sizeof(uint64_t);
- unsigned int threadId_size = sizeof(std::thread::id);
+ unsigned int threadId_size = sizeof(std::thread::id); // Is platform dependent
+
+ BOOST_CHECK(numberOfBytesWritten == 20 + threadId_size);
unsigned int offset = 0;
// Check the decl_id
diff --git a/src/profiling/test/TimelineUtilityMethodsTests.cpp b/src/profiling/test/TimelineUtilityMethodsTests.cpp
index 43a5b0a4f5..caffcc74b0 100644
--- a/src/profiling/test/TimelineUtilityMethodsTests.cpp
+++ b/src/profiling/test/TimelineUtilityMethodsTests.cpp
@@ -429,7 +429,9 @@ BOOST_AUTO_TEST_CASE(RecordEventTest)
auto readableBuffer = mockBufferManager.GetReadableBuffer();
BOOST_CHECK(readableBuffer != nullptr);
unsigned int size = readableBuffer->GetSize();
- BOOST_CHECK(size == 100);
+ unsigned int threadId_size = sizeof(std::thread::id); // Is platform dependent
+ BOOST_CHECK(size == 92 + threadId_size);
+
const unsigned char* readableData = readableBuffer->GetReadableData();
BOOST_CHECK(readableData != nullptr);
@@ -437,7 +439,7 @@ BOOST_AUTO_TEST_CASE(RecordEventTest)
unsigned int offset = 0;
// Verify Header
- VerifyTimelineHeaderBinary(readableData, offset, 92);
+ VerifyTimelineHeaderBinary(readableData, offset, 84 + threadId_size);
// First dataset sent: TimelineEntityBinaryPacket
VerifyTimelineEventBinaryPacket(EmptyOptional(), EmptyOptional(), EmptyOptional(), readableData, offset);