Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to profile a silverlight application?

Is their any profilers that support Silverlight? I have tried ANTS (Version 3.1) without any success? Does version 4 support it? Any other products I can try?

Updated since the release of Silverlight 4, it is now possible to do full profiling on SL applications... check out this article on the topic

At PDC, I announced that Silverlight 4 came with the new CoreCLR capability of being profile-able by the VS2010 profilers: this means that for the first time, we give you the power to profile the managed and native code (user or platform) used by a Silverlight application. woohoo. kudos to the CLR team.

Sidenote: From silverlight 1-3, one could only use things like xperf (see XPerf: A CPU Sampler for Silverlight) which is very powerful to see the layout/text/media/gfx/etc pipelines, but only gives the native callstack.)

From SilverLite (PDC video, TechEd Iceland, VS2010, profiling, Silverlight 4)

like image 298
rudigrobler Avatar asked Sep 11 '08 07:09

rudigrobler


People also ask

How do I use Silverlight app?

Using Silverlight outside the browser is as easy as bookmarking Web pages. Silverlight applications with out-of-browser support are simple to install, run, and uninstall. To install, just right-click the Web-based application and select install. The installer adds a shortcut to your desktop or Start menu.

What is Silverlight an example of?

Silverlight is a Plug-in for a web browser. A Plug-in is an extension of an application created to enhance or extend functionality. Examples of other web browser plug-ins are Flash, Java applets, Windows Media Player, and QuickTime.


1 Answers

Install XPerf and xperfview as available here: http://msdn.microsoft.com/en-us/library/cc305218.aspx

(1) Startup your sample

(2) xperf -on base

(3) wait for a bit

(4) xperf –d myprofile.etl

(5) when this is done, set your symbol path:

    set _NT_SYMBOL_PATH= srvC:\symbolshttp://msdl.microsoft.com/downloads/symbols

(6) xperfview myprofile.etl

(7) Trace -> Load Symbols

  • Select the area of the CPU graph that you want to see
  • Right-click and select Summary Table

(8) Accept the EULA for using symbols, expand IExplore, expand agcore.dll or whatever is your top module

like image 68
Jon Galloway Avatar answered Sep 20 '22 00:09

Jon Galloway