查看原文
其他

为什么安卓的手机越用越慢,刷机也不行,是 CPU 老化吗?

Wolf UEFI社区 2023-12-29
点击上方“公众号” 可以订阅哦!

也许你和我有一样的感受,手机刚买时运行还比较流畅,可是过了一段时间(大概一两年)却越用却卡。这在很多中低端手机尤其明显。你也许会怀疑是不是垃圾应用安装多了,可你会发现很多时候甚至重刷系统都不能解决问题,还是难以回复初始的畅快感。这是不是手机厂商的阴谋,逼迫我们升级手机呢?还是CPU老化了,运行速度越来越慢了呢?

首先CPU并不会因为老化而变慢,我在这篇专栏文章中有详细解释:

CPU能用多久?会不会因为老化而变慢?

简单来说就是CPU的速度是恒定的,都是一个基频乘以一个比例(Ratio)出来的。基频现在Intel CPU一般是100MHz,我们用的3GHz CPU,Ratio就是30,下来刚好3GHz。ARM的也类似。而基频和Ratio在整个生命期是不变的,从而CPU运算速度是不变的。手机里面其他的子系统也类似。

其实这除了和我们安装的应用软件越来越多,而国产app经常不请自来在后台偷偷运行有关外。重刷系统都不能解决速度问题和手机的存储介质——闪存关系很大。

写放大(Write Amplification)

我们前文介绍FTL(传送门)时,介绍了闪存的存储特性。我们知道了闪存写入是以page为单位,而擦除是以block为单位,在写之前必须擦除。我们也知道了为了延长闪存的生命周期和寿命均衡(Wear Levelling),FTL用LBA/PBA表来映射逻辑和物理操作单位,而一般的消费级SSD和闪存系统有至少7%的空闲块——OP(Over Provisioning)。OP空间就是闪存主控保留的自有空间,用来负责负载均衡和防止写放大。一个形象的例子就像我们玩数字华容道:

我们要把方块1挪到右下角,一定好充分利用唯一的空格位置,将它移来移去,十分的困难。我们想象一下,如果在最下面忽然多出一整排空闲位置,这样相信就是小学生也可以轻松完成这个简单版华容道,而不需要很多步骤。我们的OP就是这个空闲块,多了后就会显著减少挪动的步数,而步数就可以看作写放大,对闪存寿命和速度有显著影响。

因为这个原因,所以SSD和手机厂商必定会空出部分空间来给OP,一般至少7%。高端的SSD和手机的OP空间能够达到20%到30%以上。OP的大小对性能影响很大,我们今天来看看OP和写放大对flash性能的影响。

我们假设要写入一个4KB的数据,可是一个块里已经没有干净空间了,但是有失效的数据可以擦除,所以主控就把所有的数据搬到缓存或者OP空间,然后擦除块,再加上这个4KB新数据写回去,这个操作就造成了写入放大,即本来是写4K的数据,却造成了整个块(512KB)的写入操作,也就是128倍放大。当然我们前文提到LBA/PBA并不是简单的block,而垃圾收集和Trim对写放大都有所减缓。但随着闪存空闲空间越来越少,主控的腾挪空间也越来越少。IBM Zurich Research Laboratory做的研究证明写放大和空闲净块关系极大,如下图:

可以看出,在空闲块少后,写放大可以达到3到4倍。

我们新买的SSD和手机,空空如也的数据块让写性能达到最大,而随着程序和数据越来越多,写入性能也逐渐下降。那究竟空闲块少到多少才会性能下降,降到什么程度呢?

数据

根据Anandtech做的实验数据,如下图:

横轴是时间,纵轴是写入IOPS。随着时间写入越来越多的随机4KB数据,开始100000的IOPS在某时刻剧烈下降,最后随着空闲干净块慢慢减少,稳定到了10000IOPS,效能下降到原来的10%!

当然最终用户使用情况没有这么恶劣,但数据说明写放大对效能的影响巨大。这也是为什么高端企业级SSD的op空间巨大的原因,Intel的SSD DC3700的op空间达到32%,这让它有了巨大的腾挪空间,它的曲线异常平滑:

这对服务器市场非常重要。

结论

数据表明,我们对手机存储空间或SSD使用大于75%后,写入性能就会因为写放大而大大下降。中低端手机Flash空间本来就小,OP又小,很容易造成写放大,大大减低了Flash的寿命。而寿命降低,会出现更多坏块,反过来又加剧写放大,形成恶性循环。速度会越来越慢,这个靠重刷系统是不能解决问题的

现在你是不是要考虑买个大容量的手机了?iPhone手机为了提升用户体验,op留的很大,所以快满了后差距并不是很厉害,可以类比Intel那款SSD。

那么如何避免呢?这里简单说一下一些注意事项。

  1. 首先必须保证手机剩余存贮空间在25%以上。至于如何做到,就是删删删呗。

  2. 删除流氓软件、自启动软件。必要时分别设置app权限。

  3. 未有改善就只有重刷系统了。注意保留有价值的信息,如通讯录、照片等等。

  4. 重刷系统,一般都会有改善。Trim在Android 4.3的手机上自动会打开,无需操作。

  5. 重刷系统还未改善,如果是Android 4.3的系统,很有可能就是坏块太多了,你会发现可用空间变少了很多。有些软件可以重置FTL表,但有风险。建议凑合用或者购买新机,毕竟现在低端手机可以看作快消品了。

  6. 坏块不会死而复生,坏了就是坏了,节哀顺变吧。

日常使用时注意不要把存贮空间使用到高于75%,会加速写放大,加速坏块的产生。



继续滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存