Re: [15/17] SLUB: Support virtual fallback via SLAB_VFALLBACK

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Christoph Lameter <clameter@...>
Cc: Nick Piggin <nickpiggin@...>, Christoph Hellwig <hch@...>, <linux-fsdevel@...>, <linux-kernel@...>, David Chinner <dgc@...>, Jens Axboe <jens.axboe@...>
Date: Friday, September 28, 2007 - 5:05 pm

On (28/09/07 10:33), Christoph Lameter didst pronounce:

Large pages, flood gates etc. Be wary.

SLUB has to run 100% reliable or things go whoops. SLUB regularly depends on
atomic allocations and cannot take the necessary steps to get the contiguous
pages if it gets into trouble. This means that something like lumpy reclaim
cannot help you in it's current state.

We currently do not take the per-emptive steps with kswapd to ensure the
high-order pages are free. We also don't do something like have users that
can sleep keep the watermarks high. I had considered the possibility but
didn't have the justification for the complexity.

Minimally, SLUB by default should continue to use order-0 pages. Peter has
managed to bust order-1 pages with mem=128MB. Admittedly, it was a really
hostile workload but the point remains. It was artifically worked around
with min_free_kbytes (value set based on pageblock_order, could also have
been artifically worked around by dropping pageblock_order) and he eventually
caused order-0 failures so the workload is pretty damn hostile to everything.


A compromise may be to have per-cpu lists for higher-order pages in the page
allocator itself as they can be easily drained unlike the SLAB queues. The
thing to watch for would be excessive IPI calls which would offset any
performance gained by SLUB using larger pages.


They are not reliable yet, particularly for atomic allocs.


If we're falling back to vmalloc ever, there is a danger that the
problem is postponed until vmalloc space is consumed. More an issue for
32 bit.


-- 
-- 
Mel Gorman
Part-time Phd Student                          Linux Technology Center
University of Limerick                         IBM Dublin Software Lab
-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[15/17] SLUB: Support virtual fallback via SLAB_VFALLBACK, Christoph Lameter, (Tue Sep 18, 11:36 pm)
Re: [15/17] SLUB: Support virtual fallback via SLAB_VFALLBACK, Christoph Lameter, (Fri Sep 28, 1:33 pm)
Re: [15/17] SLUB: Support virtual fallback via SLAB_VFALLBACK, Christoph Lameter, (Mon Oct 1, 4:50 pm)
SLUB performance regression vs SLAB, Matthew Wilcox, (Thu Oct 4, 12:16 pm)
Re: SLUB performance regression vs SLAB, Christoph Lameter, (Thu Oct 4, 1:38 pm)
Re: SLUB performance regression vs SLAB, Arjan van de Ven, (Thu Oct 4, 1:50 pm)
Re: SLUB performance regression vs SLAB, David Miller, (Thu Oct 4, 4:48 pm)
RE: SLUB performance regression vs SLAB, David Schwartz, (Thu Oct 4, 7:39 pm)
Re: SLUB performance regression vs SLAB, Chuck Ebbert, (Thu Oct 4, 7:49 pm)
RE: SLUB performance regression vs SLAB, David Schwartz, (Fri Oct 5, 12:18 am)
Re: SLUB performance regression vs SLAB, Matthew Wilcox, (Thu Oct 4, 4:58 pm)
Re: SLUB performance regression vs SLAB, Christoph Lameter, (Thu Oct 4, 5:11 pm)
Re: SLUB performance regression vs SLAB, David Miller, (Thu Oct 4, 5:05 pm)
Re: SLUB performance regression vs SLAB, Peter Zijlstra, (Thu Oct 4, 2:26 pm)
Re: SLUB performance regression vs SLAB, Christoph Lameter, (Thu Oct 4, 1:58 pm)
Re: SLUB performance regression vs SLAB, Matthew Wilcox, (Thu Oct 4, 2:32 pm)
Re: SLUB performance regression vs SLAB, Christoph Lameter, (Thu Oct 4, 1:49 pm)
Re: SLUB performance regression vs SLAB, Matthew Wilcox, (Thu Oct 4, 3:28 pm)
Re: SLUB performance regression vs SLAB, David Miller, (Thu Oct 4, 4:55 pm)
Re: SLUB performance regression vs SLAB, Chuck Ebbert, (Thu Oct 4, 5:02 pm)
Re: SLUB performance regression vs SLAB, Peter Zijlstra, (Fri Oct 5, 4:32 pm)
Re: SLUB performance regression vs SLAB, David Miller, (Fri Oct 5, 5:31 pm)
Re: SLUB performance regression vs SLAB, David Miller, (Thu Oct 4, 5:11 pm)
Re: SLUB performance regression vs SLAB, Chuck Ebbert, (Thu Oct 4, 5:47 pm)
Re: SLUB performance regression vs SLAB, David Miller, (Thu Oct 4, 6:07 pm)
Re: SLUB performance regression vs SLAB, David Chinner, (Thu Oct 4, 6:23 pm)
Re: SLUB performance regression vs SLAB, Jens Axboe, (Fri Oct 5, 2:48 am)
Re: SLUB performance regression vs SLAB, Matthew Wilcox, (Fri Oct 5, 7:56 am)
Re: SLUB performance regression vs SLAB, Christoph Lameter, (Fri Oct 5, 3:27 pm)
Re: SLUB performance regression vs SLAB, Jens Axboe, (Fri Oct 5, 8:37 am)
Re: SLUB performance regression vs SLAB, Pekka Enberg, (Fri Oct 5, 5:19 am)
Re: SLUB performance regression vs SLAB, Jens Axboe, (Fri Oct 5, 5:28 am)
Re: SLUB performance regression vs SLAB, Andi Kleen, (Fri Oct 5, 7:12 am)
Re: SLUB performance regression vs SLAB, Jens Axboe, (Fri Oct 5, 8:39 am)
Re: SLUB performance regression vs SLAB, Christoph Lameter, (Fri Oct 5, 3:31 pm)
Re: SLUB performance regression vs SLAB, Christoph Lameter, (Fri Oct 5, 3:32 pm)
Re: SLUB performance regression vs SLAB, Matthew Wilcox, (Thu Oct 4, 5:05 pm)
Re: SLUB performance regression vs SLAB, Christoph Lameter, (Thu Oct 4, 10:43 pm)
Re: SLUB performance regression vs SLAB, Arjan van de Ven, (Thu Oct 4, 10:53 pm)
Re: SLUB performance regression vs SLAB, Christoph Lameter, (Thu Oct 4, 3:05 pm)
Re: SLUB performance regression vs SLAB, Siddha, Suresh B, (Thu Oct 4, 3:46 pm)
Re: [15/17] SLUB: Support virtual fallback via SLAB_VFALLBACK, Mel Gorman, (Fri Sep 28, 5:05 pm)
Re: [15/17] SLUB: Support virtual fallback via SLAB_VFALLBACK, Christoph Lameter, (Mon Oct 1, 5:10 pm)
Re: [15/17] SLUB: Support virtual fallback via SLAB_VFALLBACK, Christoph Lameter, (Fri Sep 28, 2:20 pm)
Re: [15/17] SLUB: Support virtual fallback via SLAB_VFALLBACK, Christoph Lameter, (Mon Oct 1, 5:01 pm)
Re: [15/17] SLUB: Support virtual fallback via SLAB_VFALLBACK, Christoph Lameter, (Mon Oct 1, 4:55 pm)
Re: [15/17] SLUB: Support virtual fallback via SLAB_VFALLBACK, Christoph Lameter, (Mon Oct 1, 5:38 pm)
Re: [15/17] SLUB: Support virtual fallback via SLAB_VFALLBACK, Christoph Lameter, (Mon Oct 1, 5:52 pm)
Re: [15/17] SLUB: Support virtual fallback via SLAB_VFALLBACK, Christoph Lameter, (Fri Sep 28, 2:41 pm)