当前位置:聪少自媒体网 > 微博 > 正文

别再测微博极速版了

2020-10-06 微博 聪少自媒体

微博极速版根本就没有经过编译,不知道一帮人测什么呢....

菊花那个编译器大概就是重新实现了ART

分为runtime?和编译器两部分

编译器将java?编译成机器码runtime?负责处理GC?以及java?动态特性,由于类加载之前已经编译完成,所以这个runtime?比ART?少了解释器和JIT/AOT?编译器,以及IR?生成优化器。

性能方面

据内部人士透露实际性能并不比dex2oat everything?完的ART?强,毕竟ART?几十项编译优化不是开玩笑的。大嘴比较的应该是刚安装的app,毕竟刚安装的时候基本上是解释执行。但是内存和耗电应该会有一点优势,毕竟菊花编译器得工作不是在手机上完成的,runtime?也被极大的简化。再谈一下ART?的性能,首先现在ART?的时间性能并不差,AOT + JIT +?解释器的运行模式也是google?这么多年的结果,8.0?之后的模版解释器经过大量优化性能已经不差。optimizing?编译后端优化后的代码甚至比原生code?优秀。ART?与原生代码差距在于内存占用以及java?动态特性带来的消耗。当然还有混合模式时,方法跳转执行模式切换时栈复制的消耗。

菊花编译器的不足之处

首先是违背了java?得一处编译处处运行的初衷,显然这种“优化”只能在含有对应runtime?的机器上生效。对应app?的进程应该在zygote_fangzhou?上被孵化出来。其次前面说了,性能并不会有明显优势。据透露,目前只支持system server,为啥呢,我个人不负责任的猜测runtime?并没有保留解析Dex?的逻辑,编译器可能是直接从java?编成机器码,而普通app?大量充斥着动态加载dex?等操作,自然不能完美兼容。

那为什么做这款编译器?

和Flutter?类似,华为准备建设自己的app?生态补充上一点,和Fuchsia?类似,这套编译器和runtime?很可能也用于华为新系统,到时候方便快速拉拢开发者。

那为什么大嘴会说流畅性大大提升?

很简单,ui?上的优化空间比语言层面大的多得多

另外媒体疯狂测试的“微博极速版”经我解包分析并没有任何优化痕迹,暂时媒体还激动的太早了。

总的来说,华为能做出一套性能不俗的java?编译器和runtime?还是有点东西的。

聪少爱学堂聪少
聪少爱学堂创始人,梅州市鹏鑫网络科技有限公司CEO,09年开始踏入互联网,10年互联网行业经验,资深自媒体人,自媒体优秀导师,咪挺微商团对营销引流顾问,业务包含:精准引流技术/代引流精准粉,专业小红书,知乎,微博代运营。
  • 38988文章总数
  • 1491136访问次数
  • 建站天数
  • 合作伙伴