[PATCH 0/2][SAUCY][SRU] ext4 random block write performance regression fix
Colin King
colin.king at canonical.com
Mon Oct 21 18:01:26 UTC 2013
From: Colin Ian King <colin.king at canonical.com>
BugLink: http://bugs.launchpad.net/bugs/1242812
SRU Justification:
Commit e7ea81db5(ext4: restructure writeback path) introduced
a performance regression with random writes. Using tools such
as bonnie++, writes with dd or even stress testing with tools
such as 'stress' one can observe a 10%-20% performance
regression.
Impact:
Write performance is diminished causing a noticeable regression
compared to previous released kernels.
Fix:
Two patches are required:
a) upstream fix 9c12a83 which fixes the overly aggressive writing
back of pages which ultimulately resulted in more seeking and
less performance.
b) commit aeac589a7 from the dev branch of kernel/git/tytso/ext4.git
which ensures no more pages than nr_to_write can be added to the extent
for mapping.
Testcase:
Using stress-ng on a 2 CPU machine run:
stress-ng --hdd 2 --hdd-ops 200000
With the fix, this consistently runs ~10-20% faster with the fix.
Notes:
This fix has been performance tested with several different scenarios
such as builds of software, copying data, bonnie++, etc. The patches
address the issue and cause no noticeable performance regression in
other use cases.
Jan Kara (1):
ext4: fix performance regression in writeback of random writes
Ming Lei (1):
ext4: fix performance regression in ext4_writepages
fs/ext4/inode.c | 28 ++++++++++++++--------------
1 file changed, 14 insertions(+), 14 deletions(-)
--
1.8.3.2
More information about the kernel-team
mailing list