lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20081113185712.GB11204@untroubled.org>
Date:	Thu, 13 Nov 2008 12:57:12 -0600
From:	Bruce Guenter <lists-linux-ext4@...ce-guenter.dyndns.org>
To:	linux-ext4@...r.kernel.org
Subject: ext4 unlink performance

Hi.

I started running some comparison benchmarks between ext3 and ext4 this
week.  During one torture test, I observed that ext4 unlink speed is
much slower than ext3, and using 256-byte inodes makes it worse.

The torture test consists of unpacking a large tarball consisting of a
about 725,000 small files in random order and then recursively unlinking
the extracted directory.  The majority of the files in the archive are a
single block, about 15% are span multiple blocks.

The results:

ext4 128 extract: 618.991 elapsed 54.903 user 81.789 sys 22.08%
ext4 256 extract: 671.655 elapsed 55.099 user 74.593 sys 19.30%
ext3 128 extract: 950.965 elapsed 55.155 user 77.473 sys 13.94%
ext3 256 extract: 985.687 elapsed 55.591 user 94.698 sys 15.24%

ext4 beats ext3 hands down, with either inode size.  I would think that
the 128 byte inode runs are faster than the 256 byte inode runs simply
because of the number of small files involved.

ext4 128 unlink: 913.934 elapsed 0.296 user 33.550 sys 3.70%
ext4 256 unlink: 1507.696 elapsed 0.324 user 37.602 sys 2.51%
ext3 128 unlink: 171.150 elapsed 0.244 user 23.825 sys 14.06%
ext3 256 unlink: 360.073 elapsed 0.328 user 27.954 sys 7.85%

Ouch.  Why is ext4 so much slower than ext3 here, and why is there such
a huge discrepancy between the different inode sizes?  The filesystems
were created with the stock options except for inode size and ^huge_file
(for historical reasons when I was testing with older kernels).

I tested this with Linus's git sources on x86_64 on IDE.  2.6.28-rc4 and
2.6.27 had similar performance.

-- 
Bruce Guenter <bruce@...roubled.org>                http://untroubled.org/

Content of type "application/pgp-signature" skipped

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ