Atom上网本上的高CPU和WPF

本文关键字:CPU WPF Atom | 更新日期: 2023-09-27 18:14:35

我正在编写一个具有高度风格化WPF界面的应用程序(所有默认的Windows UI chrome都消失了,所有控件都有自定义样式)。这个应用程序在我正在开发的机器上运行得很好(Core i7 with NVidia 550M), CPU只有1%。在一个朋友的全新上网本(AMD Fusion C-50, Radeon HD 6250)上,它的CPU使用率可能只有1-2%。但后来我用我妻子的旧上网本在性能较弱的设备上(原装戴尔Mini 9、Atom N270、英特尔945 Express显卡)测试了一下,运行了同样的应用程序,CPU占用率接近50% !然而,当应用程序最小化时,它会下降到4-5%,所以我认为这一定是实际的GUI导致的问题。

但是我不太熟悉WPF是如何渲染的(我使用的是最新的。net 4.0框架)。它真的是图形密集型的吗?虽然GUI是程式化的,但它并没有真正做很多事情……只有一个不断更新的进度条和几个可能每3分钟发生一次的列表动画(这是一个媒体应用程序)。但除此之外,GUI是相当静态的。

由于我没有给出GUI是如何编写的很多细节,我显然不期望如何修复它的具体细节,但我希望能够澄清一下最新的WPF是如何依赖于一个相对现代的GPU(我承认,这个GPU几乎不能处理一个SD youtube视频)。WPF 4有"最低要求"吗?这个应用程序本身非常简单,所以我不希望它仅仅因为我使用了WPF就具有真正现代的硬件要求。

Atom上网本上的高CPU和WPF

凭借DirectX,如果由于任何原因失败,视频加速将优先退回到软件渲染。你妻子的机器是XP吗?假设你正在使用自定义窗口铬等等你可能已经设置allowtransparent =true?如果是这样,你的应用程序可能会退回到软件渲染的结果。

使用WpfPerf来确定它是否被软件渲染。确保你有XP SP3,如果仍然无法解决,试试这个