EROFS Lands Big Optimization In Linux 6.8 For Low-Memory Scenarios

Written by Michael Larabel in Linux Storage on 31 January 2024 at 06:55 AM EST. Add A Comment
LINUX STORAGE
Merged overnight for Linux 6.8 is enhancing the EROFS read-only open-source file-system to perform better in low-memory scenarios. Not just better, but significantly better performance.

This optimization that is now in Linux Git ahead of Linux 6.8-rc3 this coming weekend is to relax the temporary buffers allocation on readahead. Chunhai Guo with smartphone maker VIVO explained of this improvement in the patch:
"Even with inplace decompression, sometimes very few temporary buffers are still needed for a single decompression shot (e.g. 16 pages for 64k sliding window or 4 pages for 16k sliding window). In low-memory scenarios, it would be better to try to allocate with GFP_NOWAIT on readahead first. That can help reduce the time spent on page allocation under durative memory pressure."

On an Android 8-core device with 8GB of memory, when carrying out a multi-app launch benchmark, this patch yielded around a 20% improvement for app launch times with EROFS:

EROFS benchmark


This optimization for the EROFS temporary buffer allocation for low-memory scenarios has been merged for Linux 6.8. This is important with EROFS beginning to appear on many (memory constrained) Android devices as well as this read-only file-system finding increasing use within the container space.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week