今天的 华为有技术·EMUI媒体沙龙 中,华为消费者BG软件部总裁王成录博士和大家分享了华为黑科技背后的故事,其中透露了关于方舟编译器的更多细节。作为一名 Android 开发,我也一直关注着方舟的最新动态。在方舟发布的第一时间,我也写了一篇相关的文章 说说方舟编译器,对方舟和 Android Art 运行机制还不是很了解的可以移步这篇文章。

下面是媒体沙龙会上关于方舟编译器的相关介绍,来自于微博 华为EMUI。下面就一睹为快吧!

编译器是连接人类世界与机器世界之间的一座桥梁,同时也扮演着“翻译者”的角色。它将程序员使用的高级语言翻译成机器能明白的机器码,从而使得手机能够听懂并执行人类的指令。现有的安卓系统主要是在手机上进行编译,往往有部分程序需要一边转换一边执行,影响程序执行的效率。那么如何突破这个瓶颈呢?请往下看~


【十年磨砺,终得硕果】编译器优化对程序运行性能及用户体验有显著影响,它的开发,从系统软件到应用软件,需要投入大量的时间和精力进行研发,这一板块在国内尚属“无人区”。华为已经在研发编译器的路上积累了多年,早至2009年华为就创建了编译组,到2013年推出自研编译器HCC,对于华为在移动通信领域领先起到了关键作用,这背后是华为人前赴后继的努力和无数次尝试,终于,在2019年方舟编译器正式与大家见面。

方舟编译器,安卓性能革命突破】当前大部分安卓应用都涉及不同开发语言,不同语言形成的代码需要在运行态中进行协同从而产生额外消耗。而方舟编译器是业界首个多语言联合优化的编译器,开发者在开发环境中可以一次性将多语言统一编译为一套机器码,运行时无需产生跨语言带来的额外消耗,并可以进行跨语言的联合优化,提升运行效率。

安卓自身的编译技术在不断的发展,但始终需要在运行中依赖虚拟机来进行动态编译和解释执行,对系统资源消耗较大。而方舟编译器在开发环境中就可以完成全部代码的编译,手机安装应用程序后无需依赖虚拟机资源,即可全速运行程序,带来效率上的极大提升。举一个例子:EMUI 9.1仅仅对系统组件System Server应用了华为方舟编译器后,就带来了系统操作流畅度提升24%,系统响应性能提升44%的收益。

【方舟编译器,高效的回收机制】内存管理是程序开发与运行时需要重点考虑的部分,也和系统流畅度息息相关。安卓在内存回收上采用集中回收机制,发声全局回收时更需要暂停应用,这也是随机卡顿的根因之一。而方舟编译器提供了更高效的内存回收机制,回收时无需暂停应用,随时用随时回收,大大提高运行速度。


【方舟编译器,应用级编译优化】代码优化是编译器最为核心的功能,也是评判一个编译器优劣最重要的标准。当前由于安卓应用使用了虚拟机机制,难以面向不同应用对虚拟机进行针对性的灵活优化。安卓ART的AoT和JIT动态编译因为是运行在手机上,受资源所限,因而只能使用简单的优化算法。而方舟编译器由于是在应用开发阶段进行编译,所以可以允许不同应用灵活采用不同的编译优化方案,而且因为在开发环境编译不会受到手机性能的限制,可以使用更多先进的优化算法,从而使得每个应用的性能达到最佳。


【简单易用,开放开源】华为在持续进行技术创新的同时,也注重将技术成果回馈行业,华为方舟编译器在开发构建的阶段为开发者提供快速的集成编译环境,大大降低了开发者的学习成本和使用成本,令产业与更多用户受益。华为方舟编译器会从2019年开始全面开源,邀请整个产业和生态来一起共同关注和提升安卓性能体验。

继华为P30系列发布会方舟编译器开源后,将在2019年8月的华为终端开发者大会宣布方舟编译框架代码开源,后续会在2019年11月的绿盟开发者大会实现完整方舟编译器代码开源。

华为十年前就开始布局编译器,其在基础研发的高持续投入,的确是其他厂商所不及的。随着华为完整闭环的形成。哪有有一天失去了谷歌,失去了安卓,相信华为也能搭建出自己的一套生态环境。

后续会持续关注方舟编译器,不妨点个关注吧!

文章首发微信公众号: 秉心说 , 专注 Java 、 Android 原创知识分享,LeetCode 题解,欢迎关注!

方舟编译器最新技术细节相关推荐

  1. 华为方舟编译器 PK 微软苹果谷歌编译器,到底谁胜出?

    记者 | 胡巍巍 受访者 | 刘新铭 出品 | CSDN(ID:CSDNnews) 近日,华为方舟编译器终于正式开源,兑现了在2019年8月开源的承诺. 与此同时,其代码不在GitHub,而是在自家开 ...

  2. 华为方舟编译器PK微软苹果谷歌编译器,到底谁胜出?

    记者 | 胡巍巍 受访者 | 刘新铭 来源 | CSDN(ID:CSDNnews) 近日,华为方舟编译器终于正式开源,兑现了在2019年8月开源的承诺. 与此同时,其代码不在GitHub,而是在自家开 ...

  3. 华为终于放出方舟编译器源代码!开源平台同步亮相,网友:硬核项目

    乾明 边策 发自 凹非寺  量子位 报道 | 公众号 QbitAI 华为方舟编译器终于正式开源,源代码放出,兑现了在8月开源的承诺. 代码不在GitHub,而是在自家开源平台上.这也意味着,华为开源平 ...

  4. 起底方舟编译器的引用计数!

    整理 | 胡巍巍 素材提供 | 华为 出品 | CSDN(ID:CSDNnews) 10月8日,是中国国庆假期后的第一个工作日,人们告别假日的休闲,再次返回工作岗位,准备为Q4摩拳擦掌. 这天早上,大 ...

  5. 万字长文详解华为方舟编译器的荣光和使命

    本文由MO编辑部出品,文字超1万,查阅的资料多达上百万文字,并且与华为方舟编译器的专家做过深度访谈.其不仅解析了华为在编译器和手机系统方面做的多年准备,也向读者展现了波澜壮阔的软件产业发展史. 201 ...

  6. 华为新贵!方舟编译器的荣光和使命

    本文由MO编辑部出品,文字超1万,查阅的资料多达上百万文字,并且与华为方舟编译器的专家做过深度访谈.文章高度概括了波澜壮阔的软件产业发展史,解析了华为在编译器和手机系统方面做的多年准备. 2017年5 ...

  7. 邓凡平:技术探讨之请教方舟编译器的十个问题

    From: 阿拉神农 神农和朋友们的杂文集 缘起 华为的方舟编译器终于走出开源的第一步,官方地址为https://www.openarkcompiler.cn/home .我个人于今年4月在机械工业出 ...

  8. 技术探讨之请教方舟编译器的十个问题

    缘起 华为的方舟编译器终于走出开源的第一步,官方地址为https://www.openarkcompiler.cn/home .我个人于今年4月在机械工业出版社出版了"深入理解Android ...

  9. 解密方舟编译器和EMUI未来四大演进方向

    今年8月,华为方舟编译框架代码将开源,11月完整方舟编译器代码开源. 4月25日消息,两周前华为年度第一款旗舰机P30,同时宣布将操作系统升级为EMUI9.1. 在发布会上,华为推出了方舟编译器和超级 ...

最新文章

  1. 关于XGMII/XLGMII/CGMII
  2. python中get和set使用_Python对象属性的set和get方法
  3. ASA用ASDM管理时报unable to launch device manager xxx.xxx.xxx.xxx
  4. 【python练习】基于socket的FTP程序 v1.1.0(支持多用户)
  5. cos html cache插件,关于Cos-Html-Cache插件不能创建首页缓存的解决办法
  6. poj 3233 Matrix Power Series
  7. 动态区间第k小:树状数组套权值线段树
  8. JDBC教程– ULTIMATE指南(PDF下载)
  9. DVWA Cross Site Request Forgery (CSRF) -------WP
  10. python下载图片被覆盖了_Python OpenCV – 覆盖透明的图像
  11. Spring_使用(JDBC)
  12. 如何对付vc6的疑难杂症
  13. 测试计划与测试方案的区别
  14. 根据线程名获取线程及停止线程
  15. 上海电力学院linux大作业,上海电力电路大作业2重点.docx
  16. 成功通过PMP认证考试的七大要点
  17. Java并发编程:线程的基本状态
  18. 计算机无法自动搜索更新驱动程序,Win10怎么设置自动搜索更新驱动软件
  19. 想加薪怎么和领导谈?学会这四招轻松涨薪
  20. Latex数学公式-矩阵中省略号的表示

热门文章

  1. pbe近似_计算化学中的一些常见不良写法和用词
  2. php打印输出空格以及echo中.和,的区别
  3. ping不通公网ip时路由器设置
  4. Java多线程常用面试题
  5. php tofixed,php保留小数和toFixed的用法
  6. moto x android 6.0,New Moto X 2014版XT1085刷安卓6.0教程(转自爱黑武论坛)
  7. 互联网产品经理的自我修养
  8. python对建筑设计的帮助_建筑师为什么要会python编程?
  9. take me to your heart(中英对照版)
  10. html多个图片成一个图,ios webview 加载HTML 多个图片URL 拼接成一张图片