北京赛车

华为方舟编译器 v0.2源码包

  • 软件大小:8.8M
  • 软件语言:简体中文
  • 软件类型:国产软件
  • 软件授权:免费软件
  • 更新时间:2019/8/31
  • 软件类别:编程软件
  • 软件官网:https://www.openarkcompiler.cn/home
  • 应用平台:Windows10, Windows8, Windows7, WinVista, Win2003, WinXP
网友评分:6分
方舟编译器是华为公司自行研发的业界首个多语言联合优化编译器,是为支持多种编程语言、多种芯片平台的联合编译、运行而设计的统一编程平台,包含编译器、工具链、运行时等关键部件,通过多语言统一IR表示,可实现应用中多种编程语言联合编译优化提升性能;在支持多平台的同时,根据设备特征提供便捷的开发与部署策略提升效率。经过测试,华为方舟编译器能够将系统操作流畅度提升24%、系统响应力提升44%、第三方应用操作流畅度提升60%,另一方面,方舟编译器用空间换性能,直接将编译器的代码优化搬到了开发者环境,不再被手机端的硬件资源所限制,为代码优化提供了无限可能。
目前官方正式发布了华为方舟编译器,并且支持开源,开源的是编译器框架部分源码,包括编译器中间表示(IR)和语言编译实现,同时搭配编译器其他二进制组件,实现Java程序到aarch64汇编指令的编译过程。开发者可基于开源代码+二进制,编译构建出编译器工具链,尝试对Java程序进行编译。
ps:本次小编为广大用户带来了方舟编译器下载,包括了源代码包和二进制包两个版本,但如果需要使用,还需要自行下载GCC 7.3.0、Binutils 2.31.1、Glibc 2.29、Mpc 1.1.0、GNU MPFR 4.0.2、isl 0.21等开源包,软件包中已经附带了地址,送给有需要的朋友免费下载收藏。
华为方舟编译器

基本介绍

方舟编译器是基于GCC开发的交叉编译器套件,它包括了C、C++、Fortran的前端,也包括了这些语言的库(如libstdc++、libgcc等)。HCC运行在X86 linux架构服务器上,生成的二进制运行在Aarch64架构服务器上。
方舟编译器框架代码可完成Java静态编译,包括类层次关系分析、虚方法表和接口表的生成、native函数的处理等,以及基于引用计数的内存管理方式,提供RC插入功能。
方舟编译器作为全新的系统及应用的编译和运行机制,从DNA层面对安卓进行了改造,解决了安卓应用边解释边运行的低效问题,让手机能直接听懂“高级语言”,可以说是近几年来安卓阵营最大的根本性革新。它大幅降低了安卓系统随机卡顿的问题,打破了人机之间的藩篱,让用户能直观感受到的就是使用体验更加持久流畅。

方舟编译器优势

1、多语言联合:
将同一应用中的不同语言代码联合编译、联合优化,消除语言间的性能“鸿沟”,降低开发者的优化成本。
2、轻量运行时:
通过编译器的语言实现能力和优化能力增强,应用运行时的开销更小。
3、软硬件协同:
编译器与芯片实现软硬件协同优化,充分发挥硬件能效,应用体验更佳。
4、多平台支持:
支持面向多样化的终端设备平台进行编译和运行,根据设备特征提供便捷的开发与部署策略,提高开发效率。

功能介绍

一、开发阶段打包的APK就直接是可执行,并且跨语言平台
在方舟编译器里面,已经编译好的APK,会通过静态编译的方式先转换成机器码再安装,这其实是AOT,无需麻烦的虚拟机,提升运行速度和效率。并且作为开发者,还可以根据不同的程序特点,选择不同的编译优化方案,不像安卓官方的方式使用统一的虚拟机方案。

二、方舟编译器边运行变清理,内存清爽
现在安卓手机的一大特色就是内存越来越大,6GB都是老人机的配置了。这除了程序大以外还有安卓的程序运行产生垃圾多有关系。那么清理垃圾呢?则需要暂停程序,也就会顿一下,即所谓的“卡”。华为方舟编译器则是利用程序多线程运行的特点。打个比方,您现在正在用的“中关村在线”这个APP用了AB两个线程,在华为的P30手机中,那么线程A运行的时候,B在清理垃圾,然后A线程清理垃圾的时候B线程在运行,程序运行不中断,垃圾处理不停,做到了又连贯、又节约系统资源。
三、方舟编译器,应用级编译优化
代码优化是编译器最为核心的功能,也是评判一个编译器优劣最重要的标准。
当前由于安卓应用使用了虚拟机机制,难以面向不同应用对虚拟机进行针对性的灵活优化。
安卓ART的AoT和JIT动态编译因为是运行在手机上,受资源所限,因而只能使用简单的优化算法。
而方舟编译器由于是在应用开发阶段进行编译,所以可以允许不同应用灵活采用不同的编译优化方案,而且因为在开发环境编译不会受到手机性能的限制,可以使用更多先进的优化算法,从而使得每个应用的性能达到最佳。

华为方舟编译器安装教程:

一、安装前准备
1) 环境要求
方舟编译器支持如下64位操作系统。
SUSE12sp4及以上版本。
ubuntu16.04及以上版本。
其他glibc版本在2.22及以上的Linux发行版。
2) 获取软件包
安装方舟编译器需要获取如下的开源软件包。
1、GCC 7.3.0
编译器源码包
https://ftp.gnu.org/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.gz
2、Binutils 2.31.1
汇编器、链接器等二进制工具集源码包
https://ftp.gnu.org/gnu/binutils/binutils-2.31.1.tar.gz
3、Glibc 2.29
GNU libc库源码包
https://git.linaro.org/toolchain/glibc.git/snapshot/glibc-2.29.tar.gz
4、Mpc 1.1.0
复数运算库
https://ftp.gnu.org/gnu/mpc/mpc-1.1.0.tar.gz
5、GNU MPFR 4.0.2
多精度浮点计算库
https://www.mpfr.org/mpfr-current/mpfr-4.0.2.tar.gz
6、isl 0.21
集和线性约束范围内整数点关系的操作库
http://isl.gforge.inria.fr/isl-0.21.tar.gz
二、安装HCC编译器
1)     操作步骤
您可以使用HCC tar包将HCC安装到当前用户权限下的任何位置,而不会影响其他编译器的使用。
a)     介绍操作入口,例如用XX帐号登录XX环境。
b)     登陆HCC下载地址下载压缩包
hcc_arm64le.tar.gz
c)      将tar包拷贝至您想要安装的目录。
命令脚本如下所示。
cp hcc_arm64le.tar.gz /path/to/your/dir
d)     解压缩软件包。
命令脚本如下所示。
tar zxvf hcc_arm64le.tar.gz
e)     设置环境变量。
设置环境变量命令脚本如下所示。
export PATH=/path/to/your/dir/hcc_arm64le/bin:$PATH
HCC编译器提供的编译工具在=/path/to/your/dir/hcc_arm64le/bin目录下。
2)     安装后检查
HCC编译器安装完成后,可以执行aarch64-linux-gnu-gcc -v命令查询HCC版本。

常见问题

1、方舟编译器是一次性全部代码吗?
首次开源范围是编译器 IR( Intermediate Representation)、RC(Reference Counting)和多语言设计思想等,用于与业界、学术界沟通交流。后续将陆续开源编译器前端、后端,支持其它语言(如 JavaScript)的编译等,当前部分Java语言特性和JVM虚拟机特性的支持未包括在本次开源代码中,包括:annotation、lambda表达式、泛型等。目前仍有很多地方不完善,会在社区陆续迭代,遇到问题请在社区提交 issue,欢迎在社区继续讨论设计和代码共建。
2、方舟编译器开源路标是怎样的?
方舟编译器从 2019 年 8 月开始开源,欢迎广大的应用开发者、手机厂商、软件从业人员一起共建开源社区和生态。 开源计划大体上这样安排:2019 年 8 月重点开源框架部分;后续将陆续开源编译器前端、后端;支持 Java 程序编译、JavaScript 语言应用的编译等。
3、方舟编译开源面向全球开发者吗?英文网站何时上线?
方舟编译器是向全球开发者进行开源,因此,官方网站和代码托管平台均面向全球开发者开放。目前英文版网站正在紧张的开发及内测,计划将于 2019 年 Q4 上线。
4、方舟编译器源码托管计划是怎么的?
孵化委员会期间,方舟编译器代码是托管在华为云上面。在未来走向开放治理以后,将由所挂靠机构选择的平台进行托管。如果挂靠的机构采取了 X 平台,我们就采用这个机构的代码托管模式进行托管。
当前代码托管的地址:https://code.opensource.huaweicloud.com/HarmonyOS/OpenArkCompiler
5、方舟编译器开源使用的是什么License?
方舟编译器采用木兰 License。 木兰 License 由业界众多专家和公司集体共建,并非华为主导。
6、如何确认下载包来源可靠?MD5校验码是多少?
OpenArkCompiler-0.2-ubuntu-16.04-x86_64.tar.gz 包的 MD5码是: e7dc8b8c242f2d26429e2ad71dae3112
OpenArkCompiler-0.2.tar.gz 包的MD5码是:
1bf859a67c8b9a2d4080bdaf25ef6181
收起介绍展开介绍
  • C++编译器
更多 (17个) >>C++编译器c++编译器是一个与标准化C++高度兼容的编译环境,即时在C++语言环境下使用的编译工具。这点对于编译可移植的代码十分重要。编译器对不同的CPU会进行不同的优化。那么哪些编译器好用成为了大家纠结的一个问题了,目前功能完善但上手稍显困难的Source Insight、VS是大家都在用的,额外还有比如短小精悍的dev等。下面小编就给大家收集整理了一些功能强大的c++编译器供大家免费参考下载!
  • 下载地址

发表评论

您的评论需要经过审核才能显示!
江西快3 北京快3 广西快3 江西快3 广西快3 内蒙古快3 贵州快3 甘肃快3 内蒙古快3 广西快3