方舟编译器一经发布就被相关厂商应用在新推出的设备中,日前,荣耀最新推出的荣耀20系列手机就应用了这一技术,荣耀也公布了一些对比视频来展示了方舟编译器在底层性能上与传统的安卓编译器的不同之处。
首先我们要了解一下安卓操作系统编译器运行机制,我们知道安卓是一个基于Linux开发的系统,而其应用绝大部分使用Java开发,而这些应用均需要运行在Java虚拟机中,因为处理器无法识别Java语言虚拟机指令。
现阶段的安卓系统采用了AOT+JIT+解释执行三种方式共同实现Java代码编译成机器码,但安卓系统上应用的编译已经非常高效。但是,即便是应用被打包成apk也是采用Java代码,安卓内部永远绕不开编译这个问题。
而方舟编译器通过将Java语言直接变成机器码绕开虚拟机实现应用的直接编译,这样用户下载应用完成后就自然得到了编译过的应用。
通过荣耀20 PRO的演示视频我们看到,荣耀20 PRO通过方舟编译器编译的微信应用打开照片的过程对比三星Galaxy S10+更加流畅迅速。
当然,想要全面的绕开编译过程,最好的方法就是从应用底层代码就开始引入方舟编译器,方舟编译器与安卓内存回收不同的是,方舟编译器回收时不需要暂停应用就可以实现内存回收,这样可以大大提升应用的运行速度。
通过开发阶段利用方舟编译器不同的编译优化策略,我们看到,修改版的微博极速版应用运行在荣耀20 PRO上的速度甚至比苹果iPhone XS Max还要流畅。
当然,方舟编译器的普及还有很长的路要走,荣耀总裁赵明在微博上表示,“作为安卓体系的革命性突破,方舟编译器给了我们很多想象和操作空间。”
广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,IT之家所有文章均包含本声明。