9.7.5. Interpreting profiling data

To help you to interpret the profiling data, you can choose one or more Data Interpretation options from the Profiling Data menu. These options are:

Ignore Holes in Trace

Instructs RealView Debugger to ignore holes in the trace data caused by discontinuities. Discontinuities might occur, for example, when the processor is in debug state, or when tracing is disabled. When this option is selected, holes are not included in the whole time used to calculate the values for Exec% and B=>E%.

Use Logarithmic Scale for Histogram

When this option is selected, the length of the histogram bar is calculated using a logarithmic function of the Exec% or B=>E% value. When this option is disabled, a simple linear scale is used.

Parent/Child %ages Relative to Whole Time

Enables you to specify the value that time percentages are calculated relative to. When this option is selected, the values shown for Exec% and B=>E% for parents and children are shown as a percentage of the whole time traced. This setting is the default.

See Viewing the Parent/Child %ages Relative to Whole Time for detailed information on how to interpret call-graph data when this option is selected.

Parent/Child %ages Relative to Function B=>E

Enables you to specify the value that time percentages are calculated relative to. When this option is selected, the values shown for Exec% and B=>E% for parents and children are shown relative to the total B=>E time of the function.

See Viewing the Parent/Child %ages Relative to Function B=>E for detailed information on how to interpret call-graph data when this option is selected.

Parent/Child %ages Relative to Parent/Child B=>E

Enables you to specify the value that time percentages are calculated relative to. When this option is selected, the values shown for Exec% and B=>E% for parents and children are shown relative to the B=>E time of the parents and children.

See Viewing the Parent/Child %ages Relative to Parent/Child B=>E for detailed information on how to interpret call-graph data when this option is selected.

Note

B=>E refers to Beginning to End.

Viewing the Parent/Child %ages Relative to Whole Time

This is the default view. When this option is selected, the values shown for Exec% and B=>E% for parents and children are shown as a percentage of the whole time traced. Figure 9.22 gives an example of call-graph data for a function with its parents and children.

Figure 9.22.  Example call-graph data (Parent/Child %ages Relative to Whole Time)

Example call-graph data (Parent/Child %ages Relative to Whole Time)

In this example, when Parent/Child %ages Relative to Whole Time is selected:

  • The Exec% column shows that:

    • 2.36% of the total execution time was spent in code of the function Proc_6 when called from the parent Proc_1.

    • 2.43% of the total execution time was spent in code of the function Proc_6 when called from the parent Proc_2.

    • 4.79% of the total execution time was spent in code of the function Proc_6.

    • 0.53% of the total execution time was spent in code of the function Func_2 when called as a child from Proc_6.

    • 1.07% of the total execution time was spent in code of the function Func_3 when called as a child from Proc_6.

  • The B=>E% column shows that:

    • 3.15% of the total execution time was spent in calls to function Proc_6 and its children when called from the parent Proc_1.

    • 3.24% of the total execution time was spent in calls to function Proc_6 and its children when called from the parent Proc_2.

    • 6.39% of the total execution time was spent in calls to function Proc_6 and its children.

    • 0.53% of the total execution time was spent in code of the function Func_2 and its children when called as a child from Proc_6.

    • 1.07% of the total execution time was spent in code of the function Func_3 and its children when called as a child from Proc_6.

  • The Count column shows that:

    • There were 39 calls from the function Proc_1 to the function Proc_6.

    • There were 110 calls from the function Proc_2 to the function Proc_6

    • There were 149 calls to the function Proc_6.

    • There were 29 calls to the function Func_2 from the function Proc_6.

    • There were 149 calls to the function Func_3 from the function Proc_6.

Viewing the Parent/Child %ages Relative to Function B=>E

When this option is selected, the values shown for Exec% and B=>E% for parents and children are shown relative to the total B=>E time of the function. Figure 9.23 gives an example of call-graph data for a function with its parents and children.

Figure 9.23.  Example call-graph data (Parent/Child %ages Relative to Function B=>E)

Example call-graph data (Parent/Child %ages Relative to Function B=>E)

In this example, when Parent/Child %ages Relative to Function B=>E is selected:

  • The Exec% column shows that:

    • 36.93% of the total time spent in Proc_6 and its children was spent in Proc_6 when called from Proc_1.

    • 38.03% of the total time spent in Proc_6 and its children was spent in Proc_6 when called from Proc_2.

    • 8.29% of the total time spent in Proc_6 and its children was spent in Func_2 when called from Proc_6.

    • 16.74% of the total time spent in Proc_6 and its children was spent in Func_3 when called from Proc_6.

    Note

    These four figures add up to 100% because the total time spent in Proc_6 and its children is divided between the time spent in Proc_6 when called from its parents, and the time spent in the children when called from Proc_6. This is because, in this example, there are no grandchildren.

  • The B=>E% column shows that:

    • 49.30% of the total time was spent in Proc_6 and its children when Proc_6 was called from Proc_1.

    • 50.70% of the total time was spent in Proc_6 and its children when Proc_6 was called from Proc_2.

    • 8.29% of the total time spent in Proc_6 and its children was spent in Func_2 and its children when called from Proc_6.

      Note

      This figure is the same as that in the Exec% column only because there are no grandchildren.

    • 16.74% of the total time spent in Proc_6 and its children was spent in Func_3 and its children when called from Proc_6.

      Note

      This figure is the same as that in the Exec% column only because there are no grandchildren.

    Note

    The value for the parents always totals 100%. The total time is split between the parents.

Viewing the Parent/Child %ages Relative to Parent/Child B=>E

When this option is selected, the values shown for Exec% and B=>E% for parents and children are shown relative to the B=>E time of the parents and children. Figure 9.24 gives an example of call-graph data for a function with its parents and children.

Figure 9.24.  Example call-graph data (Parent/Child %ages Relative to Parent/Child B=>E)

Example call-graph data (Parent/Child %ages Relative to Parent/Child B=>E)

In this example, when Parent/Child %ages Relative to Parent/Child B=>E is selected:

  • The Exec% column shows that:

    • 10.30% of the total time spent in Proc_1 and its children was spent in Proc_6 when called from Proc_1.

    • 38.40% of the total time spent in Proc_2 and its children was spent in Proc_6 when called from Proc_2.

    • 50.00% of the total time spent in Func_2 and its children was spent in Func_2 when called from Proc_6

    • 16.74% of the total time spent in Func_3 and its children was spent in Func_3 when called from Proc_6.

  • The B=>E% column shows that:

    • 13.74% of the total time spent in Proc_6 and its children was spent in Proc_6 and its children when called from Proc_1.

    • 51.20% of the total time spent in Proc_6 and its children was spent in Proc_6 and its children when called from Proc_2.

    • 50.00% of the total time spent in Proc_6 and its children was spent in Func_2 and its children when called from Proc_6.

      Note

      This figure is the same as that in the Exec% column only because there are no grandchildren.

    • 16.74% of the total time spent in Proc_6 and its children was spent in Func_3 and its children when called from Proc_6.

      Note

      This figure is the same as that in the Exec% column only because there are no grandchildren.

See also

Copyright © 2006-2011 ARM. All rights reserved.ARM DUI 0322G
Non-ConfidentialID052111