提交 0835ab53 编写于 作者: A Andi Kleen 提交者: Linus Torvalds

cgroup memory controller: document huge memory/cache overhead in Kconfig

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.
At earlier review I remembered asking for a external data structure for
this.

It's also quite unobvious that a innocent looking Kconfig option with a
single line Kconfig description has such a negative effect.

This patch attempts to document these disadvantages at least so that users
configuring their kernel can make a informed decision.
Signed-off-by: NAndi Kleen <ak@suse.de>
Cc: Balbir Singh <balbir@in.ibm.com>
Acked-by: NPaul Menage <menage@google.com>
Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
上级 00d62961
...@@ -394,6 +394,14 @@ config CGROUP_MEM_CONT ...@@ -394,6 +394,14 @@ config CGROUP_MEM_CONT
Provides a memory controller that manages both page cache and Provides a memory controller that manages both page cache and
RSS memory. RSS memory.
Note that setting this option increases fixed memory overhead
associated with each page of memory in the system by 4/8 bytes
and also increases cache misses because struct page on many 64bit
systems will not fit into a single cache line anymore.
Only enable when you're ok with these trade offs and really
sure you need the memory controller.
config PROC_PID_CPUSET config PROC_PID_CPUSET
bool "Include legacy /proc/<pid>/cpuset file" bool "Include legacy /proc/<pid>/cpuset file"
depends on CPUSETS depends on CPUSETS
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册