app/testpmd: print clock with CPU cycles per packet

On aarch64 platforms, the cycles are counted using either a
low-resolution generic counter or a high-resolution PMU cycle counter.
Print the clock frequency along with CPU cycles/packet to identify which
cycle counter is being used.

Signed-off-by: Dharmik Thakkar <dharmik.thakkar@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Phil Yang <phil.yang@arm.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
This commit is contained in:
Dharmik Thakkar 2020-05-08 22:38:25 +00:00 committed by Ferruh Yigit
parent e2b4cfd6a4
commit 4c0497b1dd

View File

@ -1960,11 +1960,14 @@ fwd_stats_display(void)
"%s\n",
acc_stats_border, acc_stats_border);
#ifdef RTE_TEST_PMD_RECORD_CORE_CYCLES
#define CYC_PER_MHZ 1E6
if (total_recv > 0)
printf("\n CPU cycles/packet=%u (total cycles="
"%"PRIu64" / total RX packets=%"PRIu64")\n",
"%"PRIu64" / total RX packets=%"PRIu64") at %"PRIu64
" MHz Clock\n",
(unsigned int)(fwd_cycles / total_recv),
fwd_cycles, total_recv);
fwd_cycles, total_recv,
(uint64_t)(rte_get_tsc_hz() / CYC_PER_MHZ));
#endif
}