public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] xfs_repair malloc optimizations
@ 2011-11-14 15:57 Christoph Hellwig
  2011-11-14 15:57 ` [PATCH 1/3] repair: allocate and free inode records individually Christoph Hellwig
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Christoph Hellwig @ 2011-11-14 15:57 UTC (permalink / raw)
  To: xfs

This series reduces memory usage for repairing a 97 million inode filesystem
for ~7.3 GB to ~5.3 (that is the resident set, virtual memory requirements
are about 300MB higher for both).  The main change is linking against the
tcmalloc library from the Google perftools, with uses more efficient data
structures, and is able to garbage collect freed memory from the per-thread
queues.  At least for xfs_repair it doesn't scale noticably better than
ptmalloc, as the final runtime is only minimally faster, and probably not
significant.  Given that xfs_repair generally is I/O bound that is to be
expected, though.

I'd love to build with tcmalloc by default instead of requiring the
./configure opt-in, but I'm missing the autoconf-foo to not break the
build in case it isn't present.  The same applies to using the
libtcmalloc_minimal variant that doesn't include some of the debugging
infrastructure - if anyone has the autoconf foo to use it alternatively
it would be great to also offer it.

The two preceding patches just remove some useless internal freelist
and make sure we actuall return memory to the system pool.

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

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

end of thread, other threads:[~2011-11-21 11:59 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-14 15:57 [PATCH 0/3] xfs_repair malloc optimizations Christoph Hellwig
2011-11-14 15:57 ` [PATCH 1/3] repair: allocate and free inode records individually Christoph Hellwig
2011-11-14 15:57 ` [PATCH 2/3] repair: allocate and free extent " Christoph Hellwig
2011-11-14 15:57 ` [PATCH 3/3] xfsprogs: allow linking against libtcmalloc Christoph Hellwig
2011-11-18  7:04   ` Arkadiusz Miśkiewicz
2011-11-19 18:45     ` Christoph Hellwig
2011-11-21 11:59       ` [PATCH 3/3 v2] " Christoph Hellwig

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox