简体   繁体   中英

Tools to profile performance of .NET Compact Framework applications

The only thing I've found is EQATEC Profiler . Are there any other profilers out there that can be used to profile .NET CF apps?

There's the built-in CLRProfiler: The CLRProfiler for the .NET Compact Framework (Version 3.5 of the .NET Framework): your question doesn't state which version you are targeting. It's part of the Power Toys for .NET Compact Framework 3.5 .

There is also the .NET Compact Framework Remote Performance Monitor:

The .NET Compact Framework Remote Performance Monitor is an analysis tool that is included with the .NET Compact Framework version 2.0 Service Pack 1. This tool provides a user interface that lets you view performance data on the fly. When you start your application from Remote Performance Monitor, the tool will read statistical data for the .NET Compact Framework performance counters directly from the common language runtime (CLR).

You can also view .NET Compact Framework performance data by using the Windows desktop tool, PerfMon.exe. You can use these tools together for a live, graphical view of the performance counter data generated by the CLR.

Remote Performance Monitor enables you to do the following:

  • View performance counter data while an application is running.

  • View performance counter data in a graphical format in PerfMon.exe while an application is running.

  • Enable the generation of .stat files to duplicate behavior supported in earlier versions of the .NET Compact Framework. When you use this feature, any .stat file is written to disk when the application exits. For more information, see How to: Generate Performance Statistics.

  • View previously generated .stat files that were created in the .NET Compact Framework version 2.0.

  • Enable and disable logging.

From my experiences of looking a while back the EQATEC profiler was the only "minimum effort" profiling option kicking around. It becomes more suitable for proper performance testing if you use the "clear snapshot" command after the code you're interested in has been JITed and if you use the mechanism of producing files you can parse them yourself to gain a: Min, Max, Average output.

Obviously that then becomes more effort than "minimum effort" though! :D

Try dotTrace from JetBrains. Here is the howto for CF applications profiling http://confluence.jetbrains.net/display/NetProf/How+to+profile+.NET+Compact+Framework+applications

Can you run it under a debugger? Can you manually interrupt (pause) it? If so, then this works .

ADDED: It works on multi-threaded apps if you can take stackshots of threads , and it works no matter how large the application is. (It appears to work better on larger apps because they tend to have more problems to find.)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM