Change PMU event counter values to use 64-bit
The PMU event counter value is an accumulation of 32-bit values during
the inference and to ensure the total value fits in the rpmsg message
and UAPI, the variable holding the value has been changed to 64-bit.
The driver library, Python wrapper and inference runner have been
changed accordingly to support the 64-bit values.
Change-Id: I09a8e45eb75800c8a787f83abff5a3693148cc15
Signed-off-by: Mikael Olsson <mikael.olsson@arm.com>
diff --git a/driver_library/src/ethosu.cpp b/driver_library/src/ethosu.cpp
index 7aec696..a4feef1 100644
--- a/driver_library/src/ethosu.cpp
+++ b/driver_library/src/ethosu.cpp
@@ -539,9 +539,9 @@
throw Exception("Unknown inference status");
}
-const std::vector<uint32_t> Inference::getPmuCounters() const {
+const std::vector<uint64_t> Inference::getPmuCounters() const {
ethosu_uapi_result_status uapi;
- std::vector<uint32_t> counterValues = std::vector<uint32_t>(ETHOSU_PMU_EVENT_MAX, 0);
+ std::vector<uint64_t> counterValues = std::vector<uint64_t>(ETHOSU_PMU_EVENT_MAX, 0);
eioctl(fd, ETHOSU_IOCTL_INFERENCE_STATUS, static_cast<void *>(&uapi));