8月31日消息,据华为官方宣布,最新技术华为方舟编译器开源官网今天正式上线。(点此访问网址:https://www.openarkcompiler.cn)
网页显示,方舟编译器的源代码已经提供下载,具体开源的是编译器框架部分源码,包括编译器中间表示(IR)和语言编译实现,以及编译器其他二进制组件,实现Java程序到aarch64汇编指令的编译过程。
对并未此次为何没有公布全部代码,华为表示,首次开源范围是编译器IR(Intermediate Representation)、RC(Reference Counting)和多语言设计思想等,用于与业界、学术界沟通交流。后续将陆续开源编译器前端、后端,支持其它语言(比如JavaScript)的编译等。
当前部分Java语言特性和JVM虚拟机特性的支持未包括在本次开源代码中,包括annotation、lambda表达式、泛型等。
目前仍有很多地方不完善,会在社区陆续迭代,遇到问题请在社区提交issue。
据悉,方舟编译器的优势如下四点:
1、多语言联合
将同一应用中的不同语言代码联合编译、联合优化,消除语言间的性能“鸿沟”,降低开发者的优化成本;
2、轻量运行时
通过编译器的语言实现能力和优化能力增强,应用运行时的开销更小;
3、软硬件协同
编译器与芯片实现软硬件协同优化,充分发挥硬件能效,应用体验更佳;
4、多平台支持
支持面向多样化的终端设备平台进行编译和运行,根据设备特征提供便捷的开发与部署策略,提高开发效率。
根据华为实验室的测试数据,EMUI 9.1在仅仅对系统组件System Server应用了华为方舟编译器后,就带来了系统操作流畅度提升24%,系统响应性能提升44%的收益。
官方介绍,方舟编译器是为支持多种编程语言、多种芯片平台的联合编译、运行而设计的统一编程平台,包含编译器、工具链、运行时等关键部件,目前还在持续演进中,陆续将上述能力将陆续实现和开源。
通过多语言统一IR表示,可实现应用中多种编程语言联合编译优化提升性能;在支持多平台的同时,根据设备特征提供便捷的开发与部署策略提升效率。
另外,开源页面还公布了已经支持方舟编译器的应用,显示至少45款第三方应用支持华为方舟编译器,具体如下图:
原创文章,作者:tangzheng,如若转载,请注明出处:http://www.antutu.com/doc/119111.htm
登录后才能评论