WPF performance and Tablet / UMPC type PCs

I am trying to develop innovative applications for Tablet PC and UMPC users.

Generally speaking these types of machines will not be powered with the latest 3.0Ghz+ dual processors etc. For instance my machine is a 1.4Ghz Intel Centrino with 512mb RAM. It has a tier 2 capable GPU, i,e, dxdiag shows that the GPU supports DirectX V9. I am running Windows XP Tablet PC 2005 edition.

I have been playing with the .NET 3.0 WPF RC1 build (and at this stage I am not even using digital ink) just trying out various presentation ideas. The problem is that although the features are great - the performance is frankly, awful

My problems begin when I try to display a WPF page with more than a few elements on it.

For instance, imagine trying to present a simple Excel style worksheet with rows, columns and cells. There are lots of ways to go about creating a page like this in WPF (e.g. Grid, ListBox, GridView, ScrollView controls with Border, TextBox, Line content), but you usually end up needing more than a 1000 elements visible at any one time to represent the cells.

Whatever I try, I seem to end up with the same result - high CPU utilisation (75-100%) and slow response time (seconds) whenever a UI action is initiated which affects the visible content e.g. scrolling down one row.

I have checked that DirectX is utilised by using the Perferator tool. I am only creating and using the number of elements required to fill the visible area i.e. I am 'virtualising' the input data.

Back tracking, I have also realised that even simple examples e.g. a ListBox which displays a list of names with a border around them can use 100% CPU when scrolling! The scrolling is really slow.

The thing is, reading through the forums I suspect I am not the only one who is suffering from these types of problems.

Looks like its back to Windows.Forms / GDI . . .



Answer this question

WPF performance and Tablet / UMPC type PCs

  • S76

    Hello -

    Sorry to hear about your experience with WPF RC1's performance. If you can, update the released bits and let me know if you experience similar issues. Also, make sure you've got the latest video driver from you video card manufacturer. After that, if you're still experiencing the problem I'd like to get a sample of what you're running so we can profile it if possible.

    Regards,

    Henry



  • QWERTYtech

    wow! get out my head! I'm ran into the same exact problem building a simple calculator app. While debuging my app, i noticed slow response times and really high CPU as i moved the mouse around. Even worse, the simple app was consuming close to 120mb of memory! I am really impressed with the technology but I'm not sure it can be used for any serious app development if it is causing these kinds of problems. Thinking it was debug mode I shut everything else down and tried running again, same slow response time, same high memory consumption. What's up with that
  • bn.srinivasa rao

    Make sure you try running it in primary landscape. Most Tablet PC's have abysmal graphics performance in anything other than primary landscape due to the software rotation of each and every pixel.
  • DavidAragornHouse

    This performance from WPF is not suprising. Can you tell me how much memory is consumed when you run your application Since WPF uses some caching in other processes, I am most interested in the total system memory loss when you run the application.

  • WPF performance and Tablet / UMPC type PCs