Messages in this thread | | | Date | Thu, 21 Feb 2008 10:36:10 +0530 | From | Balbir Singh <> | Subject | Re: [PATCH] Document huge memory/cache overhead of memory controller in Kconfig |
| |
Nick Piggin wrote: > On Wednesday 20 February 2008 23:52, Balbir Singh wrote: >> Andi Kleen wrote: >>> Document huge memory/cache overhead of memory controller in Kconfig >>> >>> I was a little surprised that 2.6.25-rc* increased struct page for the >>> memory controller. At least on many x86-64 machines it will not fit into >>> a single cache line now anymore and also costs considerable amounts of >>> RAM. >> The size of struct page earlier was 56 bytes on x86_64 and with 64 bytes it >> won't fit into the cacheline anymore? Please also look at >> http://lwn.net/Articles/234974/ > > BTW. We'll probably want to increase the width of some counters > in struct page at some point for 64-bit, so then it really will > go over with the memory controller! >
Hmm...
> Actually, an external data structure is a pretty good idea. We > could probably do it easily with a radix tree (pfn->memory > controller). And that might be a better option for distros. >
I'll put in my long list of TODOs. I started looking at it yesterday again and here are my early thoughts
1. We could create something similar to mem_map, we would need to handle 4 different ways of creating mem_map. 2. On x86 with 64 GB ram, if we decided to use vmalloc space, we would need 64 MB of vmalloc'ed memory
I have not explored your latest suggestion of pfn <-> memory controller mapping yet. I'll explore it and see how that goes.
-- Warm Regards, Balbir Singh Linux Technology Center IBM, ISTL
| |