花粉俱乐部  logo 花粉俱乐部  因为热爱
搜索 |
[极客资讯]

首次全面深度解密华为方舟编译器(十)

[复制帖子标题和链接]

971

huafans01327389996  已臻大成  发表于 2020-1-12 22:26:13 来自:荣耀Note10 更大更快更Cool

最新回复 2020-1-14 22:28:13

07
代码“万国通”
95%的Top应用都是Java/C/C++等混合语言编写而成。方舟编译器的第二个使命,就是干掉混合语言互相调用带来的JNI开销。
华为方舟编译器团队基于多个编程语言的深刻理解和大量研发积累,将混合语言破天荒实现了统一的中间表示IR,这就相当于同一个人能够理解全世界的语言,所以我们把这个革命性突破叫做,代码“万国通”。
那么方舟编译器是如何使用统一的IR来表示各种语言呢?
IR是用来表示代码的数据结构,它是编译器的各模块以及相关工具之间用来传递信息的“协议和通用语言”,也是程序变换和编译优化各种算法的承载体。它是编译器的“大脑”,直接决定了编译器的最终效果。它的难度是最高的。
华为方舟编译器团队对IR进行了长达五年的精雕细琢,逐渐摸索出“大脑”里每一条神经、每一个神经元的信号规律,并在此基础上发明了一套核心专利,使得不同语言代码在开发者环境中能够统一编译成同一套可直接执行的机器码,从而彻底消除混合语言互相调用的开销。
075213_1162542239_13_618_511.jpg
08
给代码装上飞机发动机
除了IR,编译器还有一个非常重要的价值,就是代码优化。
华为方舟编译器,直接将代码优化从手机环节搬到了开发者环境,未来还可能搬到云端。利用开发者环境更强大的算力,可以实现更先进和精细的优化算法,来达到更强大的优化效果,在很多特定场景代码优化的提升甚至是颠覆性的。
075213_1162542239_14_1000_531.jpg
这相当于给APP在方舟里装上飞机发动机,让你的APP运行如飞!
值得一提的是,开发者使用方舟编译器,并不需要改变原来的编码习惯。开发者可以自行开发代码优化算法,也可以仅通过方舟编译器预置的算法进行代码优化。未来,华为还将提供代码调优工具,开发者可以选择根据工具的优化建议来调整代码,和方舟编译器配合获得更优的执行效果。
可以想象,未来广大APP开发者使用方舟编译器后,消费者们的体验将达到一个前所未有的高度。这对于整个安卓生态,都是一件前所未有的幸事!
huafans01327389996  已臻大成  发表于 2020-1-14 22:28:13 来自:荣耀Note10 更大更快更Cool
欢迎各位花粉朋友们踊跃留言,加强沟通交流切磋,以便增进互动,大家有什么观点或者看法,请在评论区留言即可。
您需要登录后才可以回帖 登录 | 立即注册

EMUI10.0
用户组申请
版规
最新精华
  • 花粉随手拍二月合辑-夜景篇
  • 随手拍二月合辑之风光篇
  • 随手拍二月份合辑之生活篇
  • 随手拍二月合辑之微距篇

工具下载

  • 花粉客户端官方

    Make it Possible

华为软件专区

关注花粉俱乐部

粤ICP备19015064号-4|备案主体编号:44201919072182| 粤公网安备 44190002003939号

Copyright © 2012-2020 华为终端有限公司 版权所有

快速回复 返回顶部 返回列表