Skip to content

Commit 8119d6d

Browse files
committed
Arm backend: Minimal example of pruning
Explain how to prune a NN and the associated uplift in performance when running on the Ethos-U NPU. Change-Id: Ib68513e5b4cb7ceef280b6fe089985e9948a8140
1 parent 3485495 commit 8119d6d

File tree

2 files changed

+573
-4
lines changed

2 files changed

+573
-4
lines changed

examples/arm/executor_runner/arm_perf_monitor.cpp

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ namespace {
1919
#if defined(ETHOSU55) || defined(ETHOSU65)
2020
const uint32_t ethosu_pmuCountersUsed = 4;
2121
#elif defined(ETHOSU85)
22-
const uint32_t ethosu_pmuCountersUsed = 5;
22+
const uint32_t ethosu_pmuCountersUsed = 7;
2323
#else
2424
#error No NPU target defined
2525
#endif
@@ -65,11 +65,14 @@ void ethosu_inference_begin(struct ethosu_driver* drv, void*) {
6565
ETHOSU_PMU_Set_EVTYPER(drv, 2, ETHOSU_PMU_EXT_RD_DATA_BEAT_RECEIVED);
6666
ETHOSU_PMU_Set_EVTYPER(drv, 3, ETHOSU_PMU_EXT_WR_DATA_BEAT_WRITTEN);
6767
ETHOSU_PMU_Set_EVTYPER(drv, 4, ETHOSU_PMU_NPU_IDLE);
68-
// Enable the 5 counters
68+
ETHOSU_PMU_Set_EVTYPER(drv, 5, ETHOSU_PMU_MAC_ACTIVE);
69+
ETHOSU_PMU_Set_EVTYPER(drv, 6, ETHOSU_PMU_WD_ACTIVE);
70+
// Enable the 7 counters
6971
ETHOSU_PMU_CNTR_Enable(
7072
drv,
7173
ETHOSU_PMU_CNT1_Msk | ETHOSU_PMU_CNT2_Msk | ETHOSU_PMU_CNT3_Msk |
72-
ETHOSU_PMU_CNT4_Msk | ETHOSU_PMU_CNT5_Msk);
74+
ETHOSU_PMU_CNT4_Msk | ETHOSU_PMU_CNT5_Msk | ETHOSU_PMU_CNT6_Msk |
75+
ETHOSU_PMU_CNT7_Msk);
7376
#else
7477
#error No NPU target defined
7578
#endif
@@ -214,7 +217,7 @@ void StopMeasurements(int num_inferences) {
214217
#elif defined(ETHOSU85)
215218
ET_LOG(
216219
Info,
217-
"Ethos-U PMU Events:[ETHOSU_PMU_SRAM_RD_DATA_BEAT_RECEIVED, ETHOSU_PMU_SRAM_WR_DATA_BEAT_WRITTEN, ETHOSU_PMU_EXT_RD_DATA_BEAT_RECEIVED, ETHOSU_PMU_EXT_WR_DATA_BEAT_WRITTEN, ETHOSU_PMU_NPU_IDLE]");
220+
"Ethos-U PMU Events:[ETHOSU_PMU_SRAM_RD_DATA_BEAT_RECEIVED, ETHOSU_PMU_SRAM_WR_DATA_BEAT_WRITTEN, ETHOSU_PMU_EXT_RD_DATA_BEAT_RECEIVED, ETHOSU_PMU_EXT_WR_DATA_BEAT_WRITTEN, ETHOSU_PMU_NPU_IDLE, ETHOSU_PMU_MAC_ACTIVE, ETHOSU_PMU_WD_ACTIVE]");
218221
#else
219222
#error No NPU target defined
220223
#endif

0 commit comments

Comments
 (0)