2 Replies Latest reply on May 19, 2014 3:38 AM by tonyshu

    How to get CPU cycles of a function using DS5 (or Streamline)?

    tonyshu Bit

      Hello, I'm trying to optimize some functions in ARM Cortex A9 architecture. Now, I want to judge whether the optimization is valid by reading and comparing the executed CPU cycles. But I can't find some tools in DS-5 to do this job. Could you give me some suggestion?

        • Re: How to get CPU cycles of a function using DS5 (or Streamline)?
          peterharris Employee

          By default DS-5 is a time-based profile - so it takes samples of the program counter every 1ms, and over a period of many samples it can build up a statistical picture of what the program is doing, and where the CPU time is being spent. The tool doesn't report cycles - it reports load in each function as a percentage of runtime. If you optimize a function which was taking 5% of run-time and after modification it takes 2% of run-time then you have made it faster.

           

          You get the best view of the data if you enable call chains (compile with -g -fno-omit-frame-pointer) and enable stack unwinding in the target configuration dialog of DS-5 Streamline.

           

          HTH,
          Pete

          1 of 1 people found this helpful