按照华为官方的测试数据,“方舟编译器”可以让应用执行效率提升了29%,系统操作流畅度提升了24%,系统响应性能提升了44%,三方应用操作流畅度提升了60%。
9月1日消息,方舟编译器(OpenArkCompiler)正式开源后,华为现在又进行了一系列的后续操作,比如提供方舟编译器的源代码包、相关文档、演示等资料下载,同时其相应的官网也已经上线。
华为官方表示,本次方舟编译器开源的是编译器框架部分源码,包括编译器中间表示(IR)和语言编译实现,同时搭配编译器其他二进制组件,实现Java程序到aarch64汇编指令的编译过程。
此外,华为还指出,方舟编译器是向全球开发者进行开源,因此,官方网站和代码托管平台均面向全球开发者开放。目前英文版网站正在紧张的开发及内测,计划将于2019年Q4上线。
按照华为官方的测试数据,“方舟编译器”可以让应用执行效率提升了29%,系统操作流畅度提升了24%,系统响应性能提升了44%,三方应用操作流畅度提升了60%。据悉,华为方舟编译器将会在EMUI后续的版本开发中运用到更多模块中,以便更多开发者可参与到方舟编译器的开发、使用中。
方舟编译器是什么?
华为官方介绍,方舟编译器是首家完全替代语言虚拟机的静态编译器,完全不需要解释器。兼顾Java开发效率和C语言运行效率的编译器。相比现有的编译机制:
1、方舟编译器是一种静态的编译方式,而现有的安卓系统,运行一个应用程序首先启动虚拟机,然后读入应用程序代码,逐条解释执行。会占用较多的处理资源,影响程序执行的效率。当然,也有包括AOT或JIT等提前或运行时的编译技术,把部分程序转换成机器码直接在CPU上执行。但是,仍旧无法做到100%做到摆脱虚拟机的执行,这也是当前安卓阵营不如IOS阵营的关键;
2、华为方舟编译器的静态编译方式可将语言里的动态特性直接翻译成机器码,手机安装应用程序后可全速运行程序,彻底消除虚拟机的弊病,带来效率上的极大提升;
3、方舟编译器是在开发环境部署的编译器,而现有编译过程,主要发生在手机上,带来额外的资源消耗;
其实通俗点来说就是,方舟编译器通过对安卓底层优化,让安卓程序编译的效率更高,安装程序的速度、运行的速度更快,让程序降低对用户设备的电量消耗,同时还可以在一定程度上减低程序对硬件的要求。
方舟编译器的优势
按照华为的介绍,方舟编译器是为支持多种编程语言、多种芯片平台的联合编译、运行而设计的统一编程平台,包含编译器、工具链、运行时等关键部件,目前还在持续演进中,上述能力将陆续实现和开源。
通过多语言统一IR表示,方舟编译器可实现应用中多种编程语言联合编译优化提升性能,而且在支持多平台的同时,根据设备特征提供便捷的开发与部署策略提升效率。
华为方舟编译器提供了全新的系统及应用的编译和运行机制,从动态编译变为静态编译,就是直接将高级语言直接编译成机器码,彻底消除了虚拟机动态编译的额外开销,实现了开发和运行效率的兼容并举。
1、多语言联合
将同一应用中的不同语言代码联合编译、联合优化,消除语言间的性能“鸿沟”,降低开发者的优化成本
2、轻量运行时
通过编译器的语言实现能力和优化能力增强,应用运行时的开销更小
3、软硬件协同
编译器与芯片实现软硬件协同优化,充分发挥硬件能效,应用体验更佳
4、多平台支持
支持面向多样化的终端设备平台进行编译和运行,根据设备特征提供便捷的开发与部署策略,提高开发效率
都有哪些应用、机型支持方舟编译器
从官网给出的介绍看,目前已有至少45款第三方应用支持华为方舟编译器,都是大家耳熟能详的超大用户量App,而且后续还有更多的App加入其中。
至于支持的机型,具体来说是(更多机型还在陆续适配中):
华为品牌:P30、P30 Pro,P20、P20 Pro,Mate 20、Mate 20 Pro、Mate 20 X、Mate 20 RS保时捷设计、Mate 10、Mate 10 Pro、Mate 10保时捷设计、Mate RS保时捷设计、nova 5 Pro、nova 4、nova 3;
荣耀品牌:荣耀20、荣耀20 Pro,荣耀9X、荣耀9X Pro、荣耀Magic2、荣耀10、荣耀V10、荣耀Play、荣耀V20;
特别提醒:本网内容转载自其他媒体,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。