This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Is it Profilling Data is Cycle Accurate?

Note: This was originally posted on 22nd April 2009 at http://forums.arm.com

Hi Friends,

          I am getting profilling analysis information from ARM work bench IDE. I am getting this profile information by running my application on RTSM of ARM1136jf-s.


         But it is giving some delay time, self time and etc. I want to get Cycle Accurate information using profilling through RTSM is it possible? if it is possible how? please help to me to find Cycle Accurate information using profilling.


Regards,
Ranjith.
Parents
  • Note: This was originally posted on 22nd April 2009 at http://forums.arm.com

    Run a benchmark on real hardware, with the real memory system you plan on using, and use the performance counters to measure cycles and CPU events. Or you could always use trace hardware such as RealView Trace2 if your SoC supports instruction trace.

    But... if you are optimizing software then the RTSM profiler is actually a pretty good start - a few rules-of-thumb such as making code smaller, avoiding branches, and avoiding memory accesses are normally good enough starting point. The precise cycle counts often don't actually matter.

    You should be able to identify where you spend most of your time using the profiler, so know where to focus optimization, and the binary doesn't change when you run on a different target so the call pattern will be the same.
Reply
  • Note: This was originally posted on 22nd April 2009 at http://forums.arm.com

    Run a benchmark on real hardware, with the real memory system you plan on using, and use the performance counters to measure cycles and CPU events. Or you could always use trace hardware such as RealView Trace2 if your SoC supports instruction trace.

    But... if you are optimizing software then the RTSM profiler is actually a pretty good start - a few rules-of-thumb such as making code smaller, avoiding branches, and avoiding memory accesses are normally good enough starting point. The precise cycle counts often don't actually matter.

    You should be able to identify where you spend most of your time using the profiler, so know where to focus optimization, and the binary doesn't change when you run on a different target so the call pattern will be the same.
Children
No data