[lkml]   [2008]   [Sep]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subjectmemcg: lazy_lru (was Re: [RFC] [PATCH 8/9] memcg: remove page_cgroup pointer from memmap)
On Fri, 12 Sep 2008 09:12:48 -0700
Balbir Singh <> wrote:
> Kamezawa,
> I feel we can try the following approaches
> 1. Try per-node per-zone radix tree with dynamic allocation
> 2. Try the approach you have
> 3. Integrate with sparsemem (last resort for performance), Dave Hansen suggested
> adding a mem_section member and using that.
> I am going to try #1 today and see what the performance looks like

I'm now writing *lazy* lru handing via per-cpu struct like pagevec.
It seems works well (but not so fast as expected on 2cpu box....)
I need more tests but it's not so bad to share the logic at this stage.

I added 3 patches on to this set. (my old set need bug fix.)
[1] patches/page_count.patch ....get_page()/put_page() via page_cgroup.
[2] patches/lazy_lru_free.patch page_cgroup from LRU in lazy way.
[3] patches/lazy_lru_add.patch ....add page_cgroup to LRU in lazy way.

3 patches will follow this mail.

Because of speculative radix-tree lookup, page_count patch seems a bit

Anyway, I'll make this patch readable and post again.


 \ /
  Last update: 2008-09-16 14:17    [W:0.087 / U:1.456 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site