Hi All,
I'm trying to benchmark a software routine on Cortex-A32. I'm not finding a way to measure cycles on a Simulator or on a hardware(development board with DS-5 streamline). Any suggestions here?
Thanks in advance for your valuable time and responding to this query.
Regards,
Guna.
Hi Guna,
Every Arm Cortex-A or R cores includes a Performance Monitoring Unit (PMU) that at the very least enables the counting of CPU clock cycles. So you could read it prior to starting your s/w routine, then stop it at the end and the difference between the counts is the # of CPU cycles taken by your s/w routine under investigation.
Using Streamline also provides the ability to perform bare-metal performance analysis if you are not running under Linux.
Streamline Overview
https://developer.arm.com/products/software-development-tools/ds-5-development-studio/streamline/overview
Streamline for bare-metal
https://developer.arm.com/products/software-development-tools/ds-5-development-studio/streamline/streamline-for-bare-metal-systems
Which particular aspect of benchmarking are you struggling with ?
Stuart
Hi Stuart,
Thanks for your response. Yes, PMU or Streamline is possible, but unfortunately I couldnt find a development board with Cortex-A32 available in the market as of today. Please suggest if there exist any hardware with A32 core.
Thanks again for your valuable support.