华为在P30系列发布会上发布了方舟编译器之后,在刚刚结束的2019华为开发者大会中,华为进一步宣布将方舟编译器框架代码对外开源,供有兴趣的开发者研究学习,后续还将持续开放代码,为开发者带来更多利好,与合作伙伴一起推动行业的发展。
如期开源,践行技术能力开放
华为方舟编译器甫一诞生,就因其对安卓编译机制的架构级优化引发业界关注,具备多语言联合优化能力、高效的内存回收机制、灵活的编译优化方式和极低的学习使用成本等特点,是华为终端厚积薄发的又一科技成果。
在方舟编译器面世之时,华为就宣布未来将这一技术开源,希望更多的APP厂商,高校,安卓手机厂商,开源社区的开发者能一同加入进来。8月9日,在2019华为开发者大会上,华为消费者BG软件部总裁王成录博士宣布华为方舟编译器框架如期开源,供有兴趣的开发者研究学习。
本次方舟编译器开放的框架代码包括中间语言IR框架和编译器中端基础实现,同时搭配编译器其他二进制组件,实现Java基础源码到ARM64汇编的编译过程。开发者可基于开源代码+二进制,编译构建出编译器工具链,支持对特定Java SampleCode的编译。社区参与者可以通过框架源码学习方舟编译器的中间语言结构(IR)及基本的中端编译框架,熟悉方舟编译器的架构思想,并参与到诸如编译器中端优化PHASE的贡献里。
持续推进,更多便利未来可期
对于开源的考虑和路标,华为消费者BG软件部副总裁刘丹在8月10日的EMUI分论坛上也进行了阐述。
编译器是极为复杂庞大的软件工程,尤其对于完全靠自研的编译器,更需要长时间的积累和优化。第一阶段的框架开源主要满足编译器领域专家及爱好者研究学习的需要,同时华为将继续优化其他编译器组件,以便让源代码更适应开源社区的开发环境。到2020年,将开源完整编译器工具链,届时开发者可以使用它帮助完成应用的开发,也可以通过社区分享自己的想法或提交代码,多方共同打造更为强大高效的编译器。
自微博极速版得到方舟编译器加持后,华为继续与众多应用厂商紧密合作,目前已有40家各垂直域TOP应用正在与华为进行合作,随着开源的不断推进,方舟的朋友圈将越来越大,未来用户在日常操作手机的过程中,从出行到购物,从社交到资讯,都将能够享受到方舟编译带来的便利。
华为计划在2020年开源方舟核心代码,帮助开发者构建完整的工具链。届时华为还将提供代码调优工具,开发者可以选择根据工具的优化建议来调整自己的代码,和方舟编译器配合获得更优的执行效果。
方舟编译器基于支持多语言、跨平台、静态编译、灵活优化等能力,打造更高产能和更高性能的编程环境,帮助开发者以更低的成本获得更好的应用体验。