lustre-devel-lustre.org archive mirror
 help / color / mirror / Atom feed
* [lustre-devel] Using generic radix trees for large allocations
@ 2021-01-21 18:32 James Simmons
  2021-01-22  7:14 ` Andreas Dilger
  2021-01-27  7:21 ` Alexey Lyashkov
  0 siblings, 2 replies; 3+ messages in thread
From: James Simmons @ 2021-01-21 18:32 UTC (permalink / raw)
  To: Lustre-devel

  One of the challenging issues for very large scale file systems is the
performance crash when you cross about 670 stripe count. This is due to
the memory allocations going from kmalloc to vmalloc. Once you start to
use vmalloc to allocate the ptlrpc message buffers all the allocating
start to serialize on a global spinlock.
  Looking for a solution the best one I found so far have been using the
generic radix tree API. You have to allocate a page worth of data at a
time so its cluncky for use but I think we could make it work. What do
you think?

https://www.kernel.org/doc/html/latest/core-api/generic-radix-tree.html
_______________________________________________
lustre-devel mailing list
lustre-devel@lists.lustre.org
http://lists.lustre.org/listinfo.cgi/lustre-devel-lustre.org

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

end of thread, other threads:[~2021-01-27 12:44 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-21 18:32 [lustre-devel] Using generic radix trees for large allocations James Simmons
2021-01-22  7:14 ` Andreas Dilger
2021-01-27  7:21 ` Alexey Lyashkov

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).