安卓平台性能研究.docx

上传人:豆**** 文档编号:29953287 上传时间:2022-08-02 格式:DOCX 页数:7 大小:1.54MB
返回 下载 相关 举报
安卓平台性能研究.docx_第1页
第1页 / 共7页
安卓平台性能研究.docx_第2页
第2页 / 共7页
点击查看更多>>
资源描述

《安卓平台性能研究.docx》由会员分享,可在线阅读,更多相关《安卓平台性能研究.docx(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、外 文 翻 译题 目安卓平台性能研究A Study on the Performance of Android Platform姓 名学 号专 业计算机科学与技术学 制四年指导教师职称/学位 中国武汉二一七年一月 安卓平台性能研究原文来源:Hyeon-Ju Yoon. A Study on the Performance of Android Platform. International Journal on Computer Science and Engineering. 2014: 532-537 摘 要由于Android平台广泛应用于包括智能移动设备在内的嵌入式系统设备,所以系统性能

2、分析的需求显着增加。系统性能通常由基准测试仪和剖析仪软件来测量。我们使用基准应用程序和公共资料软件研究了Android平台的性能。对于更多的细节和综合的性能分析,我们提出了一个Android平台的分析架构。关键词安卓;性能;基准;剖析;1 引言智能手机和平板电脑让我们的生活发生了巨大变化。最流行的智能设备操作系统是苹果的iOS和Google的Android。由于Android是开源软件,并为开发人员提供免费的平台来制作自己的应用程序,许多硬件厂商都采用Android,市场份额也在不断增加。即使平台是通用的,具有相同的软件功能,实际的性能随着硬件和其他软件组件的不同而不同。所以每个硬件和软件开发

3、人员都在努力实现更高的优化性能。要发布智能手机产品的一些优选的软件,开发人员应该详细估计性能,以纠正或减少弱点。在本文中,我们研究了两种用于测量系统性能,基准测试和分析软件的软件工具。基准测试对于评估和估计每个设备和整个系统的相对水平非常有用,因此可以帮助我们选择硬件或调整系统变量以实现更高的性能。分析软件跟踪程序活动并收集有关函数调用,内存使用,进程和通信的信息。在分别引入代表性的基准和配置文件软件之后,我们提出了对标准工具的修改,并显示了简单的性能分析结果。这将成为未来开发综合性综合绩效分析软件的基础。2 安卓平台Android是应用于移动设备的软件栈,包括操作系统,中间件和关键应用程序,

4、Android架构如图1所示。(1)它是由OHA(开放手机联盟)(2)领导的开源项目开发和维护的,其目的是为消费者建立更好的手机。图1 Android架构图Android架构的基础系统是Linux内核2.6。它支持安全性,内存管理,进程管理,网络堆栈和设备驱动程序模型。Android系统的各种组件使用一组C / C +库。它们包括标准C系统库(libc),媒体库,包括MPEG4,H.264,MP3,JPG和PNG,显示子系统的表面管理器,LibWebCore作为Web浏览器引擎,2D图形引擎SGL,3D图形库,FreeType 用于字体渲染,还有SQLite即一个轻量级关系数据库。Androi

5、d运行时包含一组提供Java编程语言功能的核心库。Dalvik虚拟机支持Android Java应用程序的运行时环境。每个Android应用程序都使用自己的Dalvik虚拟机实例运行。传统的Java虚拟机是基于堆栈的机器,但是Dalvik是基于寄存器的,并且以Dalvik Executable(.dex)格式执行文件。应用程序开发人员通常会通过大量的API访问应用程序框架层,同时使用Java语言和XML配置文件开发程序。应用框架是一个开放的软件开发平台,包括视图管理,内容提供商,资源管理器,通知管理器和活动管理器。许多可重复使用的组件在框架中发布,开发人员可以替换组件或发布自己的功能。3 现有

6、的性能分析工具有几种用于评估和分析系统或应用程序性能的工具。 我们研究和测试了一些应用程序开发人员的基准测试工具和性能测量软件。他们可以从公开市场获得或免费开放网站上获得。3.1 BenchmarkBenchmark测试工具是评估或衡量系统相对性能的编程应用程序。它在目标设备和系统上运行一个特殊程序,收集性能数据,并将其显示为定量值。 (a)得分 (b)排名 (c)设备比较图2 .AnTuTu基准测试结果图2显示了一个著名的基准测试应用程序AnTuTu-Benchmark的结果。通过“内存性能”,“CPU整数性能”,“CPU浮点性能”,“2D 3D图形性能”,“SD卡读写速度”和“数据库IO性

7、能”测试,可以对关键项目进行全面测试。最终得分表示被测系统的相对值,可与其他设备的结果进行比较。 图2(b)显示了相同类型设备之间的排名,图2(c)描述了不同类型设备之间的相对性能。 我们可以看到,即使是相同类型的设备也可能会根据硬件调优状态和系统软件版本显示出非常不同的性能。象限标准版和SmartBench是Android设备的另一些著名的基准应用程序,它们可以衡量AnTuTu的整体表现,CF-bench,GLBenchmark,Linpack,BenchmarkPI等其他基准应用程序用于系统的特定区域,例如CPU或图形子系统。基准测试应用程序是评估和估计每个设备和整个系统的相对非常好的工具

8、,因此可以帮助我们选择硬件或调整系统变量以实现更高的性能。 然而,很难指出哪个部分会影响性能,或者为了更好的性能,我们应该操纵哪个部分。 基准测试中也没有详细的软件性能分析。3.2 Android SDK工具在Android SDK(软件开发工具包)中,包含几个软件工具,用于协助开发人员进行调试,监控和分析。 其中一些可用于性能分析。 最有用和最方便的工具是DDMS(Dalvik Debug Monitor Server)和Traceview,因为它们提供了图形视图。DDMS是具有图形界面的调试工具,提供端口转发服务,设备上的屏幕截图,设备上的线程和堆信息,logcat,进程和无线电状态信息,

9、来电和短信欺骗,位置数据欺骗等。 在使用Eclipse开发的同时,我们可以打开DDMS视图,如图3所示。图3 DDMS的屏幕截图在调试工具中,方法分析工具可用于跟踪操作流程和执行方法所需的持续时间。 它收集方法调用,并在我们与应用程序交互时估计执行时间。 调用方法概要分析,并使用DDMS的菜单“开始方法分析”和“停止方法分析”或Debug类的程序代码startMethodTracing()和stopMethodTracing()结束。 结果记录在日志文件中,并发送到Traceview工具,以图形的方式显示日志,如图4所示。图4 Traceview时间轴面板在时间轴面板中,每行表示时间向右的线程

10、。 每种方法都以不同的颜色显示,以循环模式使用。 如果我们选择一种方法,我们可以在配置文件面板中看到它的日志记录如图5所示。 配置文件面板显示独占执行时间,包含时间(带调用函数)和总执行时间的一部分。 呼叫总数和递归调用次数写在最后一列。图5 Traceview配置文件面板4 分析工具和分析结果对于智能手机来说,绝对速度是重要的问题,但响应度对用户满意度更为重要。 除了需要复杂的3D图形操作的游戏应用程序之外,即使在简单的网页浏览或通讯录,备忘录应用程序中,用户可能会感到对其触摸输入的响应缓慢。 我们修改了DDMS和Traceview,使分析程序更快一些,并分析了Android 2.2(Fro

11、yo)的Android框架的视图系统性能。4.1 DDMS修改虽然Traceview提供了很好的图形用户界面,但由于它是用Java编写的并且作为一个eclipse插件运行,所以有时候是非常慢的。为了获得更好的分析速度,我们将Traceview分解为日志数据处理部分和显示部分,并且新实现的Pretrace程序处理日志数据。通过Pretrace创建和分析开始和结束时间的通话记录和分析,Traceview在时间轴和配置文件面板中显示结果。图6显示了我们修改的结构图。图6 修改方法描述DDMS的另一个问题是他侧重于Dalvik虚拟机的应用程序和应用程序框架的内部行为,因此本地库,Linux内核和整体集

12、成对性能的影响不能被详细地观察到,这需要引入其他工具或复杂的分析软件来实现,我们将其作为未来的研究课题。4.2查看系统性能响应能力差可能是由几个原因引起的。我们的实验平台Froyo被认为是受到事件传递机制和系统动力学差的影响(据说Gingerbread大大改善了系统动力学)。由于线程间的同步问题和无意义的等待时间,垃圾收集机制也不是很好。我们专注于视图系统来分析响应性能。在方法调用记录和dmtracedump工具的帮助下,我们可以描述如图7所示的视图系统执行结构。根据视图层次结构,现有视图无效,并且从布局对象构建新画布,即当调用View.onDraw()方法时,会发生实际绘图和显示。对象是树结

13、构,视图系统遍历树并递归绘制子对象。问题是在单线程中执行递归,所以总渲染时间可能很长,导致跳过帧或停止动画。 当我们观察Traceview的配置文件面板中的每个方法的部分时,我们看到许多应用程序在视图系统和渲染中花费最多的时间。 而且,最近的许多智能设备都使用多核CPU。由于单线程中的递归不能利用多核高端CPU的高性能,因此需要其他视图系统机制来提高性能。(a)查看层次结构 (b)查看系统执行流程图7 系统查看5.结论和未来工作我们审查了一些用于分析Android平台性能的软件工具。 基准测试应用程序可用于估计相对设备性能,并可用于调整和调整性能变量。 对于应用程序和框架性能,我们可以使用An

14、droid SDK工具,如DDMS和Traceview。通过修改的调试和方法跟踪工具,我们分析了Android视图系统的性能。递归视图树遍历可能会减慢渲染过程,有时会使显示的平滑动画之间造成显示卡顿。我们只在Android 2.2 Froyo版本上进行测试。 据报道,最近的版本,如Gingerbread和Ice Cream Sandwich,因为它们显着改善了系统动态和一些耗时的组件,从而导致了更好的性能。 我们将在较新的平台上测试更多的程序,分析性能降级因素。 我们期望结果可以帮助得到性能的提升。 另一个未来的主题是将Linux内核分析器(例如Ftrace)与Android分析程序集成在一起,因为它们都是优秀的系统,但是想让他们它们的运行协调需要针对性能问题进行更多的检查。致谢本文得到了锦湖国家技术学院研究基金的支持。参考文献1 2 3 4 5 6 http:/www.chainfire.eu 7 8 9 http:/AndroidB 10 Android 2.3 platform highlights,” sdk/android-2.3-highlights html.11 http:/elinux.org/Ftrace 6

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁