Re: [PATCH V3] Add the pagefault count into memcg stats

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 13 Apr 2011 17:47:01 -0700 (PDT)
David Rientjes <rientjes@xxxxxxxxxx> wrote:

> On Thu, 14 Apr 2011, KAMEZAWA Hiroyuki wrote:
> 
> > > I'm wondering if we can just modify count_vm_event() directly for 
> > > CONFIG_CGROUP_MEM_RES_CTLR so that we automatically track all vmstat items 
> > > (those in enum vm_event_item) for each memcg.  We could add an array of 
> > > NR_VM_EVENT_ITEMS into each struct mem_cgroup to be incremented on 
> > > count_vm_event() for current's memcg.
> > > 
> > > If that's done, we wouldn't have to add additional calls for every vmstat 
> > > item we want to duplicate from the global counters.
> > > 
> > 
> > Maybe we do that finally.
> > 
> > For now, IIUC, over 50% of VM_EVENTS are needless for memcg (ex. per zone stats)
> > and this array consumes large size of percpu area. I think we need to select
> > events carefully even if we do that. And current memcg's percpu stat is mixture
> > of vm_events and vm_stat. We may need to sort out them and re-design it.
> > My concern is that I'm not sure we have enough percpu area for vmstat+vmevents
> > for 1000+ memcg, and it's allowed even if we can do.
> > 
> 
> What I proposed above was adding an array directly into struct mem_cgroup 
> so that we don't collect the stats percpu, they are incremented directly 
> in the mem_cgroup.  Perhaps if we separated enum vm_event_item out into 
> two separate arrays (those useful only globally and those useful for both 
> global and memcg), then this would be simple.
> 
> Something like
> 
> 	enum vm_event_item {
> 		PGPGIN,
> 		PGPGOUT,
> 		PSWPIN,
> 		PSWPOUT,
> 		...
> 		NR_VM_EVENT_ITEMS,
> 	};
> 
> 	enum vm_global_event_item {
> 		KSWAPD_STEAL = NR_VM_EVENT_ITEMS,
> 		KSWAPD_INODESTEAL,
> 		...
> 	};
> 
> and then in count_vm_event(), check
> 
> 	if (item < NR_VM_EVENT_ITEMS) {
> 		memcg_add_vm_event(mem, item, count);
> 	}
> 
> I don't think we need to be concerned about reordering the global 
> /proc/vmstat to fit this purpose.
> 
Hmm, ok. will try that.

Thanks,
-Kame




--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxxx  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>


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]