Linux 6.7 MMC To See Up To 4~5% Better 4K Random Write Performance
The MMC memory card updates for the Linux 6.7 kernel have been submitted for Linux 6.7 that includes new hardware support as well as a core MMC optimization to enhance the performance in some scenarios.
Most exciting with the MMC code changes is improving the random I/O write performance for 4K buffers for HSQ (Host Software Queue) hosts. The change by Unisoc's Wenchao Chen is summed up as:
A broad 4~5% performance improvement for MMC with 4K random writes via just 26 lines of new code to the core MMC host code isn't bad at all.
The MMC core code also now allows host caps (capabilities) to be modified via DebugFS for scenarions such as testing different MMC speed modes. More details on all of the MMC changes for Linux 6.7 via this pull request.
Most exciting with the MMC code changes is improving the random I/O write performance for 4K buffers for HSQ (Host Software Queue) hosts. The change by Unisoc's Wenchao Chen is summed up as:
"By dynamically adjusting the host->hsq_depth, based upon the buffer size being 4k and that we get at least two I/O write requests in flight, we can improve the throughput a bit. This is typical for a random I/O write pattern.
More precisely, by dynamically changing the number of requests in flight from 2 to 5, we can on some platforms observe ~4-5% increase in throughput."
A broad 4~5% performance improvement for MMC with 4K random writes via just 26 lines of new code to the core MMC host code isn't bad at all.
The MMC core code also now allows host caps (capabilities) to be modified via DebugFS for scenarions such as testing different MMC speed modes. More details on all of the MMC changes for Linux 6.7 via this pull request.
8 Comments