linux-ext4.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/5] Make filesystem shrinking faster and less CPU-intensive
@ 2012-03-10 21:33 Sami Liedes
  2012-03-10 21:34 ` [PATCH 1/5] libext2fs: Move a modulo operation out of a hot loop Sami Liedes
                   ` (4 more replies)
  0 siblings, 5 replies; 17+ messages in thread
From: Sami Liedes @ 2012-03-10 21:33 UTC (permalink / raw)
  To: linux-ext4

[-- Attachment #1: Type: text/plain, Size: 1202 bytes --]

This patch set speeds up at least resize2fs shrinking by causing its
CPU usage to drop by 99.5% by optimizing inode bitfield scanning.

Test case: A 100G ext4 filesystem filled to 50% with copies of
/usr/share/doc, shrinking to 75G on a slow disk (~5400 rpm) and fast
processor (Core i7):

Before:

# time resize2fs -p $FILESYSTEM 75G
[...]
real    96m26.852s
user    56m39.768s
sys     0m27.922s

After:

# time resize2fs -p $FILESYSTEM 75G
real    39m49.287s
user    0m16.601s
sys     0m26.606s

Sami Liedes (5):
      libext2fs: Move a modulo operation out of a hot loop.
      resize2fs: Use EXT2_FLAG_64BITS.
      libext2fs: Document EXT2_FLAG_64BITS in ext2fs_open2().
      libext2fs: Implement ext2fs_find_first_zero_generic_bmap().
      libext2fs: Implement fast find_first_zero() for bitarray bitmaps.

 lib/ext2fs/alloc.c        |   27 +++------------
 lib/ext2fs/bitops.h       |   16 ---------
 lib/ext2fs/blkmap64_ba.c  |   81 ---------------------------------------------
 lib/ext2fs/bmap64.h       |    5 ---
 lib/ext2fs/gen_bitmap64.c |   28 ---------------
 lib/ext2fs/openfs.c       |    1 -
 resize/main.c             |    3 --
 7 files changed, 5 insertions(+), 156 deletions(-)

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2012-03-26 15:34 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-03-10 21:33 [PATCH 0/5] Make filesystem shrinking faster and less CPU-intensive Sami Liedes
2012-03-10 21:34 ` [PATCH 1/5] libext2fs: Move a modulo operation out of a hot loop Sami Liedes
2012-03-11  9:50   ` Andreas Dilger
2012-03-10 21:35 ` [PATCH 2/5] resize2fs: Use EXT2_FLAG_64BITS Sami Liedes
2012-03-10 21:36 ` [PATCH 3/5] libext2fs: Document EXT2_FLAG_64BITS in ext2fs_open2() Sami Liedes
2012-03-10 21:37 ` [PATCH 4/5] libext2fs: Implement ext2fs_find_first_zero_generic_bmap() Sami Liedes
2012-03-11  9:51   ` Andreas Dilger
2012-03-12 19:15     ` Sami Liedes
2012-03-12 23:09       ` Andreas Dilger
2012-03-23 22:33       ` Ted Ts'o
2012-03-26 13:53         ` Sami Liedes
2012-03-26 15:34           ` Ted Ts'o
2012-03-26  2:39   ` Ted Ts'o
2012-03-10 21:38 ` [PATCH 5/5] libext2fs: Implement fast find_first_zero() for bitarray bitmaps Sami Liedes
2012-03-26  2:34   ` Ted Ts'o
2012-03-26 13:22     ` Sami Liedes
2012-03-26 15:26       ` Ted Ts'o

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).