简体   繁体   中英

Performance of WPF Application on Windows 8 tablet

I have a WPF application developed on a Windows 7 - 32 bit desktop. The app runs fine in the development system. It also runs smoothly on Windows 8 32 & 64 bit desktops.

When I run the same application on a tablet with Windows 8 - 32 bit, the application UI responds very slowly and runs very slowly. This application is actually used to monitor data received over UDP.

The tablet I am using is an HP ElitePad 900 which has Intel Atom Z2760 / 1.8 GHz (Dual Core), 2GB RAM.

I don't think the hardware is what is causing the problem.

I tried setting the ProcessRenderingOption as

RenderOptions.ProcessRenderMode = RenderMode.SoftwareOnly; 

in the application startup. But still no change. I need some suggestions/answers as to what the problem maybe.

FYI the tablet has Windows 8 not RTM, so it allows desktop applications also to run.

If there is no difference when you set ProcessRenderMode = SoftwareOnly, it is helpful to investigate the cause of problem.

Situation 1

If your app uses effects that can't be handled by GPU, it is always rendered by CPU regardless ProcessRenderMode setting. Thus, ProcessRenderMode is implicitly set SoftwareOnly. So when you set the setting SoftwareOnly explicitly, it has no effect.

In this case, your app's performance depends on CPU throughput. ATOM may be poor than your desktop CPU, the result can be explained.

Situation 2

If your tablet's GPU has not enough to render WPF effects, some effects are rendered by CPU. This causes performance down. You can check WPF GPU capability with System.Windows.Media.RenderCapability class.

Conclusion

The cause is

  1. CPU throughput because your app is always rendered by software. Or
  2. poor GPU capability to render WPF rich effects.

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