I'd like to try and improve the performance of my app for certain tasks. There are a few ideas I'd like to try out but I'm not sure how I can quantitatively measure 'before' and 'after' performance.
What is the best way to do this on WP7? It would be nice if I could do this both on the emulator and a device.
Thanks for your help, Ashish
EDIT:
I am mainly concerned with page load times. The app reads an XML file from isolated storage and populates a ListBox
. Currently I'm using XDocument
and LINQ to read the entire file before populating the ListBox
.
I'd like to switch to using XmlReader
and adding items as they are read. Ideally, the reading would happen in a separate thread, and I'd add the items one at a time (or maybe a handful at a time if that has better performance) to the ObservableCollection
that the ListBox
is bound to.
Thanks for the answers so far, I'll look into both the profiler and high resolution counter to time the operations.
There are many ways to measure and evaluate employee performance data, including graphic rating scales, self-evaluation, Management by Objectives (MBO), and checklists.
Financial, Customer, Internal Business Process, and Learning and Growth.
There are five specific types of measures that have been identified, defined and will be applied throughout Iowa state government: input, output, efficiency, quality and outcome.
A performance metric has three components: 1) a quantity, 2) the thing being measured, and 3) a time period.
While there are many ways to measure improvement, continuous improvement metrics collect and consider data over long periods of time. This can help to understand how effectively a business is improving by observing how permanent the changes it makes might be.
There are a couple of things you can do.
I found this post particularly useful. http://www.geoffhudik.com/tech/2010/10/9/basic-windows-phone-7-diagnostics.html
Also, if you have specific frame rate issues that you want to track try something like is explained here: http://www.jeff.wilcox.name/2010/07/counters/
If it is simple timing improvements I would use a more high resolution timer than the DateTime object as josh suggested.
The Stopwatch class will give you more accurate timings
The EQATEC WP7 Profiler will give you good timings on how your improvements are going, it'll also help you decide on where to focus on future improvements. I've only used the free version but it's certainly helped a lot.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With