Share via


How to Use Call Profiler to Find Performance Problems

Other versions of this page are also available for the following:

Windows Mobile SupportedWindows Embedded CE Supported

8/27/2008

With the Call Profiler tool, you can profile an application and display the data collected from the application in a variety of formats within the graphical user interface (GUI) for the tool.

This data can help identify performance problems in the application, and help during the development of the application and the final stages before release.

To find performance problems, insert probes into your application. Then use the Call Profiler tool to collect data from the application.

With the collected data, you can then use the Call Profiler views to identify performance problems.

Hardware and Software Assumptions

  • You are familiar with remote tools. For more information, see Tools for Performance Tuning.
  • If you are using a development workstation that runs Windows Vista, you are running Platform Builder for Windows Embedded CE 6.0 with administrator privileges.
  • You are familiar with creating and configuring sources files. For more information, see Sources File. **
  • You have built an OS design that includes support for the following Sysgen variables:
    • SYSGEN_SHELL
    • SYSGEN_RELFSD
    • SYSGEN_CPP_EH_AND_RTTI
  • If you want to create a connection from the target device to Call Profiler that uses ActiveSync transport, the OS design includes support for ActiveSync. For more information, see ActiveSync OS Design Development.
  • If you want to create a connection from the target device to Call Profiler that uses TCP/IP transport, the OS design includes support for TCP/IP. For more information, see TCP/IP OS Design Development.**

Steps

Step Topic

1. In the directory that contains the source code for your application, create a sources file and a makefile file.

Creating a Sources File and Makefile File for an Application

2. Familiarize yourself with CallCAP and FastCAP probes and then decide which type of probe you want to use.

Bb159116.note(en-US,WinEmbedded.60).gifNote:
FastCAP instrumentation is not supported on x86 microprocessors.

Characteristics of FastCAP and CallCAP Probes

3. Build probes into your application to support profiling with Call Profiler.

Building an Application That Supports Call Profiler Data Collection

4. Choose a Debug or Release configuration to target when Platform Builder builds the OS design into a run-time image.

To use the kernel debugger, make sure that support for the kernel debugger is enabled.

If you want to use Kernel Independent Transport Layer (KITL) transport for the configured connection, make sure that KITL is enabled.

Levels of Debugging Support

Building a Run-Time Image From a Debug Configuration

Building a Run-Time Image From a Release Configuration

5. If you have not built your run-time image, build the OS design into a run-time image.

Creating an OS Design with the Windows Embedded CE OS Design Wizard

Building a Run-Time Image

6. Choose a download service appropriate for the connection hardware. The download service will download a run-time image to the target device.

  • If you want to use ActiveSync transport with Call Profiler, you must choose the serial download service and complete special configuration steps.
  • If you want to use KITL transport with Call Profiler, you can use either Ethernet or serial download services.
  • If you want to use TCP/IP transport with Call Profiler, you must choose the Ethernet download service and complete special configuration steps.

Download Service Selection

ActiveSync Transport

TCP/IP Transport

7. Establish a hardware connection between your development workstation and the target device; then configure Platform Builder to download the run-time image to the target device over the established connection.

Configuring a Connection for Downloading and Debugging

8. Download the run-time image to the target device through the configured connection.

Wait until all modules are loaded onto the target device.

  • To ensure that Call Profiler successfully connects to your run-time image, make sure that you download a run-time image from the local release directory for your OS design. The default location of the release directory for your OS design is %_WINCEROOT%\OSDesigns\%_TGTPROJ%\RelDir\%_TGTPLAT%\%_TGTCPUFAMILY%_Release. For information about the contents of the release directory, see Opening the Release Directory.

Downloading a Run-Time Image

9. Start the Call Profiler tool.

  • On the Target menu, choose Remote Tools, and then choose Call Profiler.

Not applicable.

10. Configure the connection from the tool to the target device.

Connecting to a Target Device with a Remote Tool

Troubleshooting a Connection to a Target Device That Uses Platform Manager

11. Use the Collection Control window to run your application and collect data from the application.

After you choose Finish to stop collecting data and view the collected data, in the Timeline window you should see a bar that contains colors representing data collected from your application.

For more information about the Timeline window, see Timeline Window.

Controlling Profiling with the Call Profiler Collection Control Window

12. Familiarize yourself with the view windows for Call Profiler.

You can use the view windows to analyze in a variety of formats the data collected from your application.

Call Profiler View Windows

13. Save the information collected by Call Profiler as an .icp file.

Saving Data Collected by Call Profiler

See Also

Concepts

Call Profiler

Other Resources

How-to Topics