On Fri, 14 Oct 2011 17:38:26 -0700 Suleiman Souhlal <ssouhlal@xxxxxxxxxxx> wrote: > This patch series introduces kernel memory accounting to memcg. > It currently only accounts for slab. > > With this, kernel memory gets counted in a memcg's usage_in_bytes. > > Slab gets accounted per-page, by using per-cgroup kmem_caches that > get created the first time an allocation of that type is done by > that cgroup. > This means that we only have to do charges/uncharges in the slow > path of the slab allocator, which should have low performance > impacts. > > A per-cgroup kmem_cache will appear in slabinfo named like its > original cache, with the cgroup's name in parenthesis. > On cgroup deletion, the accounting gets moved to the root cgroup > and any existing cgroup kmem_cache gets "dead" appended to its > name, to indicate that its accounting was migrated. > > TODO: > - Per-memcg slab shrinking (we have patches for that already). > - Make it support the other slab allocators. > - Come up with a scheme that does not require holding > rcu_read_lock in the whole slab allocation path. > - Account for other types of kernel memory than slab. > - Migrate to the parent cgroup instead of root on cgroup > deletion. > Could you show rough perforamance score ? For example, Assume cgroup dir as /cgroup/memory <--- root |-A memory.use_hierarchy=1 no limit |-B no limit 1) Compare kernel make 'sys time' under root, A, B. 2) run unixbench under root, A, B. I think you may have some numbers already. Thanks, -Kame -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>