AndroidN混合使用AOT编译,解释和JIT三种运行时

    Android   N引入了一种包含编译、解释和JIT(Just In     Ti   me)的混合运行时,以便在安装时间、内存占用、     电池   消耗和性能之间获得最好的折衷。

 AndroidN混合使用AOT编译,解释和JIT三种运行时_设计制作_MEMS/传感技术

ART是在Android KitKat(译者注:Android 4.0)引入并在Lollipop(译者注:Android 5.0)中设为默认解决方案的主要特性之一,是当时的一种新的运行时。ART取代了Dalvik,但是前者与后者仍然保持了字节码级的兼容,因为前者仍在运行DEX文件。ART的主要特征之一就是安装时对应用的AOT编译。这种方式的主要优点就是优化产生的本地代码性能更好,执行起来需要更少的电量。劣势在于安装文件所需的空间和时间。在Lollipop和Ma     rs   hmallow(译者注:Android 6.0)中,大的应用需要数分钟才能安装完。

Android N开发者预览版包含了一个混合模式的运行时。应用在安装时不做编译,而是解释字节码,所以可以快速启动。ART中有一种新的、更快的解释器,通过一种新的JIT完成,但是这种JIT的信息不是持久化的。取而代之的是,代码在执行期间被分析,分析结果保存起来。然后,当设备空转和充电的时候,ART会执行针对“热代码”进行的基于分析的编译,其他代码不做编译。为了得到更优的代码,ART采用了几种技巧包括深度内联。

对同一个应用可以编译数次,或者找到变“热”的代码路径或者对已经编译的代码进行新的优化,这取决于分析器在随后的执行中的分析数据。这个步骤仍被简称为AOT,可以理解为“全时段的编译”(All-Of-the-  TI me com     pi   la  TI on)。

这种混合使用AOT、解释、JIT的策略的全部优点如下。

即使是大应用,安装时间也能缩短到几秒

系统升级能更快地安装,因为不再需要优化这一步

应用的内存占用更小,有些情况下可以降低50%

改善了性能

更低的电池消耗

如果您想了解关于编译时优化的更多细节,我们推荐播客Episode 45: Sta     te   of the ART,其中邀请了两位嘉宾——Android ART团队的leader Brian Carlst     rom   和Android平台的工程总监 Anwar Ghuloum。




23
97
0
26

相关资讯

  1. 1、Win8更换图标后想复原?教你Win8还原默认桌面图标的方法2705
  2. 2、Win10遇到蓝屏代码0xc0000034怎么办?5030
  3. 3、怎样用QuickTime剪辑视频?1989
  4. 4、Win10电脑iTunes安装出错怎么办?iTunes安装出错的解决方法4512
  5. 5、笔记本电脑怎么除尘?笔记本电脑除尘方法1443
  6. 6、Win10怎么修复lsp?Win10修复lsp的方法3860
  7. 7、如何注销脉脉app账号注销脉脉app账号的方法3937
  8. 8、Win10系统提示计算机丢失xlive.dll怎么办?4650
  9. 9、如何解决iphone录屏没声音的问题解决iphone录屏没声音的教程4444
  10. 10、Win10系统LOL帧数太低怎么办?LOL帧数太低解决办法2714
全部评论(0)
我也有话说
0
收藏
点赞
顶部