Yes, I had enable compress_cache and extent_cache, compress_cache indeed
can improve random read performance, but couldn't improve other test
case.And extent_cache was default enabled in my test.
Fix the description of the previous email:
4. 4K random overwrite has dropped to 1% of original, yes only 1% of
original, I found open file with O_WRONLY|O_DSYNC|O_DIRECT is an
important reason, every time sync a compress inode need do checkpoint,
after I remove checkpoint on compress inode, up to 10% of original. If I
set write size equal to cluster size, it can up to 35% of original.
And I think major reason of this is we need read whole cluster and
rewrite it , I've been trying to get around this restriction recently,
but haven't made any progress yet.
Thanks.
On 2021/7/2 1:06, Jaegeuk Kim wrote:
On 06/04, [email protected] wrote:
Hi:
I've been working on f2fs compression for a while, I'm confused on f2fs
compression performance, after a while reserch,
I found some problem, maybe need some discuss.
I use AndroBench test performance on mobile, after enable compression, the
benchmark scores have dropped a lot.
Specifically:
1. 32M sequential read has dropped to 50% of original. Test case open file
with O_RDONLY|O_DIRECT, and set POSIX_FADV_RANDOM, the major resaon
is disable readahed. For now,I didn't found any patch can improve this.
2. 4K random read has dropped to 40% of original, after merge `f2fs:
compress: add compress_inode to cache compressed blocks`,
significant improvement in random read performance, up to 90% of original,
maybe more.
3. 32M sequential overwrite has dropped to 10% of original, after merge
`f2fs: compress: remove unneeded read when rewrite whole cluster`
up to 30% of original.
4. 4K random read has dropped to 1% of original, yes only 1% of original, I
found open file with O_WRONLY|O_DSYNC|O_DIRECT is an important reason,
every time sync a compress inode need do checkpoint, after I remove
checkpoint on compress inode, up to 10% of original. And I think major
reason of this
is we need read whole cluster and rewrite it ,but I did't think of any
method to improve this.
I want to know is there any idea can help to improve this.
And I want to know do we have goal for the performance of compression, is it
possible to achieve the original performance?
Could you please check compress_cache and extent_cache that can improve read
performance? Both were done quite recently.
Thanks.
_______________________________________________
Linux-f2fs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel