Skip to content

Instantly share code, notes, and snippets.

@hanfengs
Created August 7, 2019 01:44
Show Gist options
  • Save hanfengs/5af33162435e5d4c13d685151eba6a77 to your computer and use it in GitHub Desktop.
Save hanfengs/5af33162435e5d4c13d685151eba6a77 to your computer and use it in GitHub Desktop.
[方舟编译器]

早上地铁的时间就看了这一篇文章《方舟编译器的荣光和使命》,总结一下:

安卓的四大问题

1;java虚拟机+编译器+解释器,应用安装或者空闲编译,在手机上生成二进制的机器码

2;额外的JNI开销,用于和C/C++代码交互,

3;代码优化空间有限,为了防止生态过于碎片化,为第三方开放了简单的优化

4;java内存回收机制GC容易造成间隙性卡顿

方舟编译器针对这4个问题

1;彻底干掉虚拟机,让方舟编译器在开发时就编译成机器码

2;将各种语言实现统一的中间表示IR,不需要额外的交互开销

3;在开发环境进行优化,方舟编译器预置了优化算法,配合优化调优工具

4;使用引用计数RC代替GC进行内存管理

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment