我的团队正在开发部署在英特尔凌动Z530上网本硬件平台上的WPF应用程序。英特尔凌动Z530配备英特尔GMA500集成显卡,具有PowerVR SGX535图形处理器内核。PowerVR SGX535GPU核心正是苹果为iPad设置的A4芯片中使用的图形核心。
我的问题是:为什么WPF在PowerVR sgx535显卡上速度这么慢?
我们实际上关闭了WPF应用程序的硬件加速,以获得更好的性能(屏幕到屏幕过渡,对话框过渡,2D图形交互)。使用相同的硬件图形核心,iPad技术堆栈能够实现更好的UI性能。
感谢你的见解!
发布于 2011-02-02 13:49:21
你是在.Net Embedded Standard 7上运行Windows4吗?我发现WPF在Windows7中比在XP中运行得更好。
您的具体性能问题是什么?
如果是动画,可以尝试使用缓存合成(.Net 4功能)将BitmapCache应用于任何背景,以便您可以在其上设置动画。此外,请确保共享并冻结您使用的所有画笔。
如果它是图表,下拉到DrawingVisuals,而不是使用形状或其他更高级别的结构。您也可以使用GDI+来绘制到WriteableBitmaps中,作为最后的手段。
此外,根据我的经验,双核Atoms还将提供更加流畅的WPF用户界面。如果可能,请尝试使用Atom D510或D525。它们消耗更多的电力,释放更多的热量,但对于我的产品来说,用户体验的改善是值得的。
请记住,iOS应用程序是原生代码。WPF提供了更高的抽象级别和更快的开发速度,但代价是性能通常较低,特别是在硬件资源有限的情况下。
发布于 2011-03-23 01:21:39
我发现XP上的所有GMA芯片组都有糟糕的WPF性能。不仅是低帧率,还有可怕的图形毛刺和伪装。表面将变得透明,视频表面将变得乱七八糟,鼠标悬停将变得闪闪发光。
我们的解决方案是通过为有问题的客户提供的注册表补丁来禁用硬件加速。
发布于 2011-01-29 13:52:04
我几乎可以肯定,在WPF处于设计和第一个实现阶段时,甚至从未考虑过带有这些图形的Atom处理器。WPF在五年前就已经在开发中了,在GMA 500图形出现之前很久。
使用Silverlight4堆栈可能会有更好的结果,它肯定是为轻量级环境设计的。WPF中的大部分功能与Silverlight中的功能相似或相同。如果您没有使用WPF的3D图形或任何其他功能,那么至少可以轻松地移植XAML。
https://stackoverflow.com/questions/4822963
复制相似问题