On Wed, Aug 4, 2010 at 11:21 AM, Wu Fengguang wrote: > Chris, > > Your slabinfo does contain many order 1-3 slab caches, this is a major source > of high order allocations and hence lumpy reclaim. fork() is another. > > In another thread, Pekka Enberg offers a tip: > >        You can pass "slub_debug=o" as a kernel parameter to disable higher >        order allocations if you want to test things. > > Note that the parameter works on a CONFIG_SLUB_DEBUG=y kernel. > > Thanks, > Fengguang He said following as. "After running swapoff -a, the machine is immediately much healthier. Even while the swap is still being reduced, load goes down and response times in virtual machines are much improved. Once the swap is completely gone, there are still several gigabytes of RAM left free which are used for buffers, and the virtual machines are no longer laggy because they are no longer swapped out. Running swapon -a again, the affected machine waits for about a minute with zero swap in use, before the amount of swap in use very rapidly increases to around 2GB and then continues to increase more steadily to 3GB." 1. His system works well without swap. 2. His system increase swap by 2G rapidly and more steadily to 3GB. So I thought it isn't likely to relate normal lumpy. Of course, without swap, lumpy can scan more file pages to make contiguous page frames. so it could work well, still. But I can't understand 2. Hmm, I have no idea. :( Off-Topic: Hi, Pekka. Document says. "Debugging options may require the minimum possible slab order to increase as a result of storing the metadata (for example, caches with PAGE_SIZE object sizes).  This has a higher liklihood of resulting in slab allocation errors in low memory situations or if there's high fragmentation of memory.  To switch off debugging for such caches by default, use        slub_debug=O" But when I tested it in my machine(2.6.34),  with slub_debug=O, it increase objsize and pagesperslab. Even it increase the number of slab(But I am not sure this part since it might not the same time from booting) What am I missing now? But SLAB seems to be consumed small pages than SLUB. Hmm. SLAB is more proper than SLUBin small memory system(ex, embedded)? -- Kind regards, Minchan Kim