zoukankan      html  css  js  c++  java
  • OpenArkCompiler方舟编译

    OpenArkCompiler方舟编译

    概述

    面向多设备、支持多语言的统一编程平台。

    OpenArkCompiler是来自华为方舟编译器的开源项目。

    OpenArkCompiler 四个技术特点

    能够将不同语言代码编译成一套可执行文件,在运行环境中高效执行:

    支持多语言联合优化、消除跨语言调用开销;

    更轻量的语言运行时;

    软硬协同充分发挥硬件能效;

    支持多样化的终端设备平台

    开源计划

    编译器框架代码开源

    时间:2019年8月

    开源范围:编译器IR+中端语言实现

    开放能力:

    框架开源供参考学习,了解方舟编译器架构及框架代码

    开发者可构建出完整编译器工具链,支持Java Sample程序编译(非应用)

    后续开源范围 陆续开源编译器前端、后端、编译优化;完整支持Java程序编译、JavaScript语言应用的编译等。

     

     

      如何使用

    • source build/envsetup.sh arm release 或
    • source build/envsetup.sh arm debug
    • make setup
    • make
    • make libcore
    • make testall

    孵化器项目

     

     相关文档

    华为方舟编译器

    方舟编译器是华为推出的首个完全自主研发的编译器平台,于2019年8月31日正式上线。方舟编译器已成为码云最快达成5000 Star的开源项目

    华为方舟编译器是华为公司专门为软件厂商研发的统一编程平台,包含编译器、工具链、运行时等关键部件。该编译器支持多种编程语言、多种芯片平台的联合编译与运行,能够有效解决安卓程序“边解释边执行”的低效率问题。

    2019年8月31日,华为方舟编译器开源官网正式上线。

    2019年11月,华为方舟编译器获“2019东北亚优秀开源项目”奖。

    研发背景

     

     

     编译器是连接人类世界与机器世界之间的一座桥梁,任何在手机上的程序,都需要经历软件开发的过程,软件开发使用的语言,易于程序员理解的高级语言,程序在手机上运行需要转换成可以高效执行的机器码,这样的转换过程就是由编译器完成的。可以说编译器是用来生成软件的软件,连接软件与芯片的桥梁,其性能,效率直接影响到最基础的消费者体验。

    技术特点

    安卓系统使用Java作为编程语言,易于开发,但是不会将代码直接编译成机器语言,程序运行时有相当一部分代码,还需要通过手机上的虚拟机临时同步编译,影响程序执行的效率。华为方舟编译器采取了静态编译的方式,首个取代了安卓虚拟机模式的静态编译器。

    性能效果

    方舟编译器采用全程执行机器码高效运行程序,架构进一步得到优化,可供开发者在开发环境一次性的将高级语言编译为机器码,手机安装应用程序后可全速运行程序,带来效率上的极大提升。根据华为实验室的测试数据,EMUI 9.1在仅仅对系统组件System Server,应用了华为方舟编译器后,就带来了系统操作流畅度提升24%,系统响应性能提升44%。 

    开源计划

    在方舟编译器面世之时,华为就宣布未来将这一技术开源,希望更多的APP厂商,高校,安卓手机厂商,开源社区的开发者能一同加入进来。

    华为计划在2020年将方舟编译器完整开源,帮助开发者构建完整的工具链。华为还将提供代码调优工具,开发者可以选择根据工具的优化,建议来调整自己的代码,与方舟编译器配合获得更优的执行效果。

    截至2019年,已经有40多个顶级应用通过方舟的编译,上架到华为应用商城,未来将有更多的第三方使用方舟编译器。同时,方舟编译器所有代码也将开源给业界。

     

    参考链接:

    https://gitee.com/openarkcompiler/OpenArkCompiler?utm_source=alading&utm_campaign=repo

     

    人工智能芯片与自动驾驶
  • 相关阅读:
    docker介绍和简单使用
    docker 安装
    流畅的python python 序列
    mysql设计表结构数据类型的选择
    Mysql存储引擎的选择
    Linux python3安装/shell脚本/if/循环/函数
    LINUX 文件/组/帮助/权限/文件压缩/管道
    Linux介绍和基本命令
    如何安装secureCRT8.1破解
    centos7 终端修改字体大小
  • 原文地址:https://www.cnblogs.com/wujianming-110117/p/15315885.html
Copyright © 2011-2022 走看看