WP7 App性能优化(10):检测应用程序性能(Ⅲ)
2010-12-26 20:54 MagicKing110 阅读(1715) 评论(2) 编辑 收藏 举报监视填充率
填充率是每一帧Silverlight传递给GPU构图的图形表层的像素数目。填充率实质上是GPU工作负载的一个度量。因此,应当随时了解自己的应用程序的填充率,以免其超出GPU的处理能力,而拖慢帧频。当应用程序的帧频超过2屏大小(每屏800*480)时,帧频将会开始降低。通常帧频的降低并不显著,除非填充率超过3.5屏的像素大小。可以通过观察帧频计数器的最后一个数字来判断当前帧频。重要的是要记住,UI线程的帧频永远不可能超过构图线程的帧频,因此如果填充率过高,将会影响应用程序的整体性能。
影响填充率的因素
每一个需要纹理的图形对象都会影响应用程序的填充率。纹理的像素数越多,填充率也越高。通常,影响填充率的有两个主要的因素。首先是基础表层,就是每一个未缓存对象周围的矩形。其次是缓存的所有元素,包括构图线程自动缓存的纹理,和开发者通过设置元素的位图缓存而缓存的元素。除了构图线程缓存的纹理,以下是其他一些自动缓存的元素.
- 平面投影的目标,无论是动态还是静态的
- T:System.Windows.Controls.MediaElement对象
- T:System.Windows.Controls.ListBoxItem对象
- T:System.Windows.Controls.ScrollViewer元素的子元素
推荐帧频和填充率
以下表格列出了在应用程序性能调优时要考虑的下限值、推荐值和上限值。要注意的是这些数值必须在真实的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 |
-------------------MagicBoy.李鹏.WindowsPhone7------------------
爱编程, 爱上网, 爱三国杀, 也爱和大家一起打DoTa!!!
不是总理, 不是委员长, 不是敏感词, 我是WinPhone7开发者!!!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库