当前位置:   article > 正文

华为EROFS文件系统的性能测试_squashfs 华为

squashfs 华为

为什么华为不直接使用squashfs,而是要另辟蹊径开发新的erofs。

1. Fio性能测试比较

测试环境:高通8核+eMMC。

测试对象:压缩erofs文件系统,压缩squashfs文件系统和标志ext4文件系统

测试项目:顺序读,随机读和分散读。(enwik9是标准测试数据,android是以android framework为主要内容的数据,两者差别主要是在压缩比上)

顺序读表现最好的依然是老牌的ext4,但是erofs明显好于squashfs,但是squashfs在加上谷歌打patch之后,性能提升很多(红色柱子),但依然还是比erofs差。

 

随机读上由于有缓存的作用,squashfs看起来表现更好,但实质会造成更大的读放大问题,特别是块比较大的128KB squashfs。4KB的erofs和ext4还是比较相当的。

分散读主要是要排除掉读缓存的效果,测试方法是每128kb只读取前4kb,结果是显然squashfs因为读放大很多,导致了性能最差。但是erofs的表现没有比ext4差很多,考虑到它本身还压缩了,已经非常不错。

2. 压缩比率测试

如果作为android系统分区使用的话,erofs因为使用LZ4压缩算法,压缩比率在70%

如果面对纯文本数据enwik9,erofs的压缩比率会更高一些达到56%

 

3. 读放大测试

测试内容:文件系统读取10MB文件内容,测试实际块设备读取数量。数值大于10表示有读放大,越大则读放大问题越明显。数值小于10则表示没有读放大问题。

顺序读由于采用了压缩,因此压缩文件系统都没有读放大问题,所以顺序读是最有利于压缩文件系统

随机读和分散读,压缩文件系统都有不同程度的读放大,但是erofs表现明显好于squashfs。

10MB sizeseq read (MB)rand read (MB)stride read (MB)
squashfs 8K android7.39 23.98 22.24 
squashfs 8K enwik96.39 21.12 21.83 
squashfs 128K android6.52 177.36 169.75 
squashfs 128K enwik94.51 114.72 141.86 
erofs android7.72 15.82 15.87 
erofs enwik96.84 17.09 16.38 
ext410.96 10.01 

10.02 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/308949
推荐阅读
相关标签
  

闽ICP备14008679号