diff -r 5b9d4d8641ce -r ae255c9aa552 sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.doc.user/html/reference/profiler/prof_using.htm --- a/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.doc.user/html/reference/profiler/prof_using.htm Wed Jun 23 14:49:59 2010 +0300 +++ b/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.doc.user/html/reference/profiler/prof_using.htm Wed Jun 23 15:05:09 2010 +0300 @@ -1,125 +1,179 @@ - - - - - - Using the Profiler - - - - - -

Using the Profiler

-

Overview

-

After successfully installing the Profiler .SISX file on your target device, you will be able to access the user interface. Run the CarbidePI application located in the “Installed” applications (Figure 1).

- - - - - - - - - -
S60UIQ
-

Figure 1 - Profiler Main Window (S60 and UIQ)

-

In Options, configure the necessary run-time options. Specify which traces you want enabled, where to place the generated .dat profiler data file, the profiler file prefix, and the trace priority sampling interval.

-

In the Profiler, the Address/Thread trace is always active when profiling is performed. Other traces are synchronized with the Address/Thread trace.

-

In addition to Address/Thread trace, you can enable additional trace options such as dynamic binary support, memory and power usage, and function calls.

-
-

Profiling an Application

-
    -
  1. Open the Profiler options screen -

    Select the Tracing options menu from the Profiler menu (Figure 2)

    -
  2. -
    - - - - - - - - - -
    S60UIQ
    -
    -
    -

    Figure 2 - Tracing Options

    -
    -
  3. Enable or disable trace options
  4. - -

    Specify On or Off for the available trace items - Dynamic binary support, Function call capture, and Thread priority capture. (Figure 3).

    -
    -

    NOTE If the executables you wish to analyze are not in a ROM image (.symbol file) of your target device, then you will need to turn on Dynamic binary support.

    -
    - - - - - - - - - -
    S60UIQ
    -

    Figure 3 - List of Trace Items

    -
  5. Specify Output
  6. -

    Specify the output for the sampled data (Figure 4). The output method can be either the File system or Debug port. If you select File system, you can save the data file to a memory card or the target device C:\ drive. With the debug port output method, you will need hardware (such as the Nokia Musti box) connected to the XTI/STI debug port to capture the profiler data. There is less profiler overhead if the debug port is used.

    - - - - - - - - - -
    S60UIQ
    -

    Figure 4 - Output Options

    -

    You can specify the file prefix for data files. The name of the profiler data file is formed from the prefix plus stream.dat. If you perform multiple traces and use the file output option, include a hash mark (#) in your file prefix. Subsequent traces will then be saved with different file names. The hash mark is automatically replaced with a number. For example, if you define the file prefix as PI_#_, multiple trace files will be named PI_1_STREAM.dat, PI_2_STREAM.dat, … PI_100_STREAM.dat. Only one hash mark is needed to provide sequential numbering. - If no hash mark is present, the same file will be overwritten with the same name.

    -

    NOTE Currently, files names should be 19 characters or less.

    -
  7. Specify Advanced Options
  8. -

    In Advanced options, specify the thread priority sample interval (Figure 5). The operating system is called automatically every millisecond to determine what thread is currently executing. This interval setting indicates how often an additional query to the operating system is made to determine the priority of the currently executing thread. The interval is specified in milliseconds. The default is 3000 milliseconds (3 seconds). You can get a thread priority as often as you like but be aware that frequent sampling of the OS may skew the performance measurement while making the call. There is a significant overhead to obtaining the priorities of all threads.

    -

    You can choose an address/thread sampling interval between 1ms and 10000ms (10 seconds). For intervals greater than 1 ms, memory, power, priority and button events are sampled periodically; not every millisecond. Memory and button events are individual events. For memory and priority the current memory size and priority are recorded before entering the time interval, then changes during the interval are recorded and the final memory size and priority when it exits the interval is recorded.

    - - - - - - - - - -
    S60UIQ
    -

    Figure 5 - Priority sample interval

    -
  9. Profile your application
  10. -

    After establishing your desired options, select Options > Profiler > Start from the main window (Figure 6) to begin sampling. On UIQ devices you will see the state of the profiler change from “Ready” to “Initializing”, and then to “Profiling”. On S60 3.x devices the state will change from "Initializing" to "Sampling" and then "Finished". When the state has changed to “Profiling” or "Sampling", the trace activity has begun. Note that none of the configurations can be changed when the tracing is active.

    -

    IMPORTANT! After the trace activity has started, leave the Profiler running in the background. Now you can proceed with the use case you wish to analyze. For example, run your application on the device.

    - - - - - - - - - -
    S60UIQ
    -

    Figure 6 - Starting a trace session

    -

    Stop the trace activity by switching back to the profiler and selecting Options > Profiler > Stop. Do not use the profiler while the trace data is being written to the data file. When the profiler is stopped, the profiler state shown in the main window will change from “profiling” to “stopping profiler”, and finally back to “ready”. The profiler data file is automatically written to the output previously selected. The actual amount of produced data depends on the length of time tracing was active and which trace options were selected. The Address/Thread trace alone produces approximately 1-4 Kbytes / second. Transfer the data file to your workstation to be analyzed with the analyzer.

    -
-
-

Related references

- - - - \ No newline at end of file + + + + + Using the Profiler + + + + + +

Using the Profiler

+ +

Overview

+ +

After successfully installing the Profiler +.SISX file on your target device, you will be able to access the user +interface. Run the CarbidePI application located in the +“Installed” applications (Figure 1).

+

+ + + +

Figure 1 - Profiler Main Window (S60)

+ +

In Options, configure the necessary run-time options. Specify which traces +you want enabled, where to place the generated .dat profiler data file, the +profiler file prefix, and the trace priority sampling interval.

+ +

In the Profiler, the Address/Thread trace is always active +when profiling is performed. Other traces are synchronized with the +Address/Thread trace.

+ +

In addition to Address/Thread trace, you can enable additional trace options +such as dynamic binary support, memory and power usage, and function calls.

+ +
+

Profiling an Application

+
    +
  1. Open the Profiler options screen +

    Select the Tracing options menu from the Profiler menu (Figure 2)

    +

    +
  2. + +

    Figure 2 - Tracing Options

    +
  3. Enable or disable trace options
  4. + +

    Specify On or Off for the available trace items - Dynamic binary support, + Function call capture, and Thread priority capture. (Figure 3).

    + +
    +

    NOTE If the executables you wish to + analyze are not in a ROM image (.symbol file) of your target device, then + you will need to turn on Dynamic binary support.

    + + + +

    + +

    + + +

    Figure 3 - List of Trace Items

    +
  5. Specify Output
  6. + +

    Specify the output for the sampled data (Figure 4). The output method can + be either the File system or Debug port. If you select File system, you can save the + data file to a memory card or the target device C:\ drive. With the debug + port output method, you will need hardware (such as the Nokia Musti box) + connected to the XTI/STI debug port to capture the profiler data. There is + less profiler overhead if the debug port is used.

    +

    +

    + + + +

    Figure 4 - Output Options

    + +

    You can specify the file prefix for data files. The name of the profiler + data file is formed from the prefix plus stream.dat. If you perform multiple + traces and use the file output option, include a hash mark (#) in your file + prefix. Subsequent traces will then be saved with different file names. The + hash mark is automatically replaced with a number. For example, if you define + the file prefix as PI_#_, multiple trace files + will be named PI_1_STREAM.dat, PI_2_STREAM.dat, … + PI_100_STREAM.dat. Only one hash mark is needed to provide sequential + numbering. If no hash mark is present, the same file will be overwritten with + the same name.

    + +

    NOTE Currently, files names should be 19 + characters or less.

    +
  7. Specify Advanced Options
  8. + +

    In Advanced options, specify the thread priority sample interval (Figure + 5). The operating system is called automatically every millisecond to + determine what thread is currently executing. This interval setting indicates + how often an additional query to the operating system is made to determine + the priority of the currently executing thread. The interval is specified in + milliseconds. The default is 3000 milliseconds (3 seconds). You can get a + thread priority as often as you like but be aware that frequent sampling of + the OS may skew the performance measurement while making the call. There is a + significant overhead to obtaining the priorities of all threads.

    + +

    You can choose an address/thread sampling interval between 1ms and 10000ms + (10 seconds). For intervals greater than 1 ms, memory, power, priority and + button events are sampled periodically; not every millisecond. Memory and + button events are individual events. For memory and priority the current + memory size and priority are recorded before entering the time interval, then + changes during the interval are recorded and the final memory size and + priority when it exits the interval is recorded.

    + + + +

    +

    + + + +

    Figure 5 - Priority sample interval

    +
  9. Profile your application
  10. + +

    After establishing your desired options, select Options > + Profiler > Start from the main window (Figure 6) to begin + sampling.The state will change from "Initializing" to "Sampling" and then + "Finished". When the state has changed to “Profiling” or + "Sampling", the trace activity has begun. Note that none of the + configurations can be changed when the tracing is active.

    + +

    IMPORTANT! After the trace activity has started, leave + the Profiler running in the background. Now you can proceed with the use case + you wish to analyze. For example, run your application on the device.

    + + + +

    +

    + + + +

    Figure 6 - Starting a trace session

    + +

    Stop the trace activity by switching back to the profiler and selecting + Options > Profiler > Stop. Do not use the profiler + while the trace data is being written to the data file. When the profiler is + stopped, the profiler state shown in the main window will change from + “profiling” to “stopping profiler”, and finally back + to “ready”. The profiler data file is automatically written to + the output previously selected. The actual amount of produced data depends on + the length of time tracing was active and which trace options were selected. + The Address/Thread trace alone produces approximately 1-4 Kbytes / second. + Transfer the data file to your workstation to be analyzed with the + analyzer.

    +
+
+ +

Related references

+ + + + +