代码改变世界

WP7 App性能优化(10):检测应用程序性能(Ⅲ)

  MagicKing110  阅读(1715)  评论(2编辑  收藏  举报

监视填充率

填充率是每一帧Silverlight传递给GPU构图的图形表层的像素数目。填充率实质上是GPU工作负载的一个度量。因此,应当随时了解自己的应用程序的填充率,以免其超出GPU的处理能力,而拖慢帧频。当应用程序的帧频超过2屏大小(每屏800*480)时,帧频将会开始降低。通常帧频的降低并不显著,除非填充率超过3.5屏的像素大小。可以通过观察帧频计数器的最后一个数字来判断当前帧频。重要的是要记住,UI线程的帧频永远不可能超过构图线程的帧频,因此如果填充率过高,将会影响应用程序的整体性能

 

影响填充率的因素

每一个需要纹理的图形对象都会影响应用程序的填充率。纹理的像素数越多,填充率也越高。通常,影响填充率的有两个主要的因素。首先是基础表层,就是每一个未缓存对象周围的矩形。其次是缓存的所有元素,包括构图线程自动缓存的纹理,和开发者通过设置元素的位图缓存而缓存的元素。除了构图线程缓存的纹理,以下是其他一些自动缓存的元素.

推荐帧频和填充率

以下表格列出了在应用程序性能调优时要考虑的下限值、推荐值和上限值。要注意的是这些数值必须在真实的Windows Phone设备上测试,因为模拟器的性能是可变的。当没有动画更新UI时,帧频计数器有时会变为0。如果想在任何时候都看到数值,可以在开发测试期间在程序中添加一个不断循环的简单动画。在准备发布程序时可以将这个动画移除。

计数器

下限

推荐值

上限

Composition Thread Frame Rate

30 Frames/Second

60 Frames/Second

120 Frames/Second

UI Thread Frame Rate

30 Frames/Second

120 Frames/Second

120 Frames/Second

Screen Fill Rate

1.5

Less than or equal to 2.5

3.0

转到:WP7 App性能优化(0):索引页

编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示