On Tue, May 25, 2010 at 01:45:07PM +0300, Pekka Enberg wrote: > Hi Nick, > > On Tue, May 25, 2010 at 1:19 PM, Nick Piggin <npiggin@xxxxxxx> wrote: > >> Like I said, as a maintainer I'm happy to merge patches to modernize > >> SLAB > > > > I think that would be most productive at this point. I will volunteer > > to do it. > > OK, great! > > > As much as I would like to see SLQB be merged :) I think the best > > option is to go with SLAB because it is very well tested and very > > very well performing. > > I would have liked to see SLQB merged as well but it just didn't happen. It seemed a bit counter productive if the goal is to have one allocator. I think it still has merit but I should really practice what I preach and propose incremental improvements to SLAB. > > If Christoph or you or I or anyone have genuine improvements to make > > to the core algorithms, then the best thing to do will just be do > > make incremental changes to SLAB. > > I don't see the problem in improving SLUB even if we start modernizing > SLAB. Do you? I'm obviously biased towards SLUB still for the reasons > I already mentioned. I don't want to be a blocker for progress so if I > turn out to be a problem, we should consider changing the > maintainer(s). ;-) I think it just has not proven itself at this point, we have most production kernels (at least, the performance sensitive ones that I'm aware of) running on SLAB, and if it is conceded that lack of queueing and reliance on higher order allocations is a problem then I think it is far better just to bite the bullet now, drop it so we can have a single allocator. Rather than adding SLAB-like queueing to it and other big changes. Then make incremental improvements to SLAB. I have no problems at all with trying new ideas, but really, they should be done in SLAB as incremental improvements. Everywhere we take that approach, things seem to work better than when we do wholesale rip and replacements. I don't want Christoph (or myself, or you) to stop testing new ideas, but really there are almost no good reasons as to why they can be done as incremental patches. With SLAB code cleaned up, there will be even fewer reasons. > > There are several aspects to this. I think the first one will be to > > actually modernize the code style, simplify the bootstrap process and > > static memory allocations (SLQB goes even further than SLUB in this > > regard), and to pull in debug features from SLUB. > > > > These steps should be made without any changes to core algorithms. > > Alien caches can easily be disabled and at present they are really > > only a problem for big Altixes where it is a known parameter to tune. > > > > From that point, I think we should concede that SLUB has not fulfilled > > performance promises, and make SLAB the default. > > Sure. I don't care which allocator "wins" if we actually are able to get there. SLUB is already behind the 8 ball here. So is SLQB I don't mind saying because it has had much much less testing. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>