On Tue, 26 Oct 2010, KOSAKI Motohiro wrote: > But, I have one question. Do you want to keep per-cpu cache although > reclaim running? If my remember is correct, your unified slab allocator > patch series drop percpu slab cache if memory reclaim occur. I modified the unified allocator to use a slab shrinker for the next release. > I mean I'd like to know how much important slab percpu cache is. can > you please explain your ideal cache dropping behavior of slab? Caches both keep state of the physical cpu caches and optimize locking since you avoid the overhead of taking objects from slab pages and pushing them in. Ideally they are kept as long as possible. But if the system has other needs then they should be dropped so that pages can be freed. > > The concept of a "zone" is for the benefit of certain legacy drivers that > > have limitations for the memory range on which they can performa DMA > > operations. With the IOMMUs and other modern technology this should no > > longer be an issue. > > IOMMU is certenary modern. but it's still costly a bit. So I'm not sure > all desktop devices will equip IOMMU. At least, we still have 32bit limitation > drivers in kernel tree. At least, desktop pc of this year still have PCI slot. > > Another interesting example, KVM is one of user __GFP_DMA32. it is > necessary to implement 32bit cpu emulation (i.e. 32bit guest). Why does KVM use __GFP_DMA32? They need a physical address below 32 bit in the 64 bit host? A 32 bit guest would only have __GFP dma and not GFP_DMA32. > I'm not sure destroying zone is good idea. I can only say that it still has > user even nowaday.. Sure it does but it creates certain headaches. I like those to be reduced as much as possible. > So again, I was thinking a reclaim should drop both page allocator pcp > cache and slab cpu cache. Am I wrong? if so, why do you disagree? I agree. -- 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>