手机软件

华为方舟编译器(附源码包)

华为方舟编译器(附源码包)

  • 版本:v5.87
  • 发布:
手机扫码下载

手机扫码下载

软件截图

软件介绍

华为方舟编译器是华为推出的Android应用编译器,支持多种编程语言、多种芯片平台的联合编译,可以在Ubuntu系统中流畅运行。它不采用现有Android编译器的解释执行模式,而是将这种动态编译改为静态编译,让机器码在整个过程中执行,进而高效运行程序,大大缩短程序的响应时间。方舟编译器在架构层面优化了终端软件的编译机制,将显著提升用户体验。这次华为公布了Ark编译器框架的源代码,未来将实现完全开源。此举将汇聚全球开发者和合作伙伴的智慧,使能产业升级和创新,激发新的软件生态活力。Ark编译器的开源是编译器框架源代码的一部分,包括编译器中间表示(IR)和语言编译实现。同时配合编译器的其他二进制组件,实现从Java程序到aarch64汇编指令的编译过程。开发者可以基于开源代码二进制编译构建一个编译器工具链,尝试编译Java程序。社区参与者可以通过框架源代码学习Ark编译器的编译器中间表示(IR)和基本中档编译框架,熟悉Ark编译器的架构思想,参与编译器中档优化等贡献。这次给大家带来的是华为方舟编译器的源代码包,包括源代码包和二进制包两个版本。可以查看下面的安装教程,有需要的朋友可以下载收藏。

软件特色

1.多语言集成:在同一应用中联合编译、联合优化不同语言代码,消除语言间的性能差距,降低开发者的优化成本。

2.轻量级运行时:编译器的语言实现能力和优化能力增强,应用运行时成本更小。

3.软硬件协同:编译器和芯片实现软硬件协同优化,充分发挥硬件能效,拥有更好的应用体验。

4.多平台支持:支持多样化终端设备平台的编译和运行,根据设备特点提供便捷的开发部署策略,提高开发效率。

软件功能

首先,在开发阶段打包的APK是直接可执行的和跨语言平台的。

在方舟编译器中,编译后的APK会被转换成机器码,然后通过静态编译的方式安装。这其实就是AOT,一个没有麻烦的虚拟机,提高了运行速度和效率。而且作为开发者,你也可以根据不同的程序特点选择不同的编译优化方案,而不是像Android官方的方式,使用统一的虚拟机方案。

第二,方舟编译器运行清理,内存刷新。

现在安卓手机的一大特点就是内存越来越大,6GB是老人机的配置。除了程序体积大,还和安卓程序运行产生的垃圾有关。清理垃圾呢?如果程序需要暂停,就会暂停,也就是所谓的“卡”。华为方舟编译器采用多线程运行的特性。比如你现在用的“中关村在线”APP,用的是两个线程AB。在华为的P30手机中,线程A运行时,B清理垃圾,然后线程A清理垃圾时,线程B运行,程序无中断运行,垃圾无中断处理,做到了连贯,节省了系统资源。

3.方舟编译器,应用级编译优化

代码优化是编译器的核心功能,也是判断一个编译器好坏的最重要标准。

目前由于Android应用使用虚拟机机制,很难针对不同的应用灵活优化虚拟机。

Android的AoT和JIT动态编译由于运行在手机上,受资源限制,只能使用简单的优化算法。

因为Ark编译器在应用开发阶段进行编译,可以让不同的应用灵活采用不同的编译优化方案,又因为在开发环境中编译

第一个开源范围是编译器IR(中间表示)、RC(引用计数)和多语言设计思想等。用于与工业界和学术界交流。编译器的前端和后端会陆续开放,支持其他语言(比如JavaScript)的编译。对一些Java语言特性和JVM虚拟机特性的支持不包含在这个开源代码中,包括注释、lambda表达式、泛型等。目前还有很多不完善的地方,会陆续在社区迭代。如果您遇到问题,请在社区中提交问题。欢迎继续在社区讨论设计和代码共建。

2.方舟编译器的开源路标是什么?

方舟编译器从2019年8月开始开源。欢迎应用开发者、手机厂商、软件从业者共同打造开源社区和生态。开源计划一般安排如下:2019年8月关键开源框架部分;开源编译器的前端和后端会陆续开放;支持Java程序编译、JavaScript语言应用程序编译等。

3.Ark是否面向全球开发者开源编译?英文网站什么时候上线?

方舟编译器对全球开发者开源,所以官网和代码托管平台对全球开发者开放。目前英文网站正在紧张开发和内测中,计划2019年Q4上线。

4.方舟编译器的源代码托管计划是怎样的?

孵化期间,方舟编译器代码托管在华为云上。未来开放治理后,将由挂靠机构选择的平台托管。如果附属机构采用X平台,我们将采用该机构的代码托管模式进行托管。

5.方舟编译器开源用什么许可证?

方舟编译器使用木兰许可证。木兰授权是业内众多专家和公司共同打造的,并非华为主导。

6.如何确认下载包的来源可靠?什么是MD5校验码?

br /> OpenArkCompiler-0.2-ubuntu-16.04-x86_64.tar.gz包的MD5码是:e7dc8b8c242f2d26429e2ad71dae3112
OpenArkCompiler-0.2.tar.gz 包的MD5码是:1bf859a67c8b9a2d4080bdaf25ef6181

方舟编译器官方渠道:

开发者可以通过如下方式获得相关代码和文档,供参考学习、了解方舟编译器的架构和代码。

官方网站:https://www.openarkcompiler.cn

代码托管网站:https://code.opensource.huaweicloud.com/HarmonyOS/OpenArkCompiler

码云镜像仓库地址:https://gitee.com/harmonyos/OpenArkCompiler

标签:

相关软件版本

最新音乐软件