How to Use Call Profiler to Find Performance Problems (Windows Embedded CE 6.0)
1/5/2010
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.
Note:
FastCAP instrumentation is not supported on x86 microprocessors.
|
|
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. |
|
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 |
6. Choose a download service appropriate for the connection hardware. The download service will download a run-time image to the target device.
|
|
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. |
|
8. Download the run-time image to the target device through the configured connection. Wait until all modules are loaded onto the target device.
|
|
9. Start the Call Profiler tool.
|
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. |
|
13. Save the information collected by Call Profiler as an .icp file. |