From mboxrd@z Thu Jan 1 00:00:00 1970 From: Glauber Costa Subject: Re: [PATCH v3 5/6] Also record sleep start for a task group Date: Wed, 30 May 2012 16:44:09 +0400 Message-ID: <4FC61619.7000300@parallels.com> References: <1338371317-5980-1-git-send-email-glommer@parallels.com> <1338371317-5980-6-git-send-email-glommer@parallels.com> <4FC61188.8000908@parallels.com> <1338381877.26856.272.camel@twins> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1338381877.26856.272.camel@twins> Sender: cgroups-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org List-ID: Content-Type: text/plain; charset="us-ascii"; format="flowed" To: Peter Zijlstra Cc: Paul Turner , linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, devel-GEFAQzZX7r8dnm+yROfE0A@public.gmane.org, Tejun Heo , "Eric W. Biederman" , handai.szj-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, Andrew.Phillips-xheW4WVAX9Y@public.gmane.org, Serge Hallyn On 05/30/2012 04:44 PM, Peter Zijlstra wrote: > On Wed, 2012-05-30 at 16:24 +0400, Glauber Costa wrote: >> sleep_start is not for iowait. This is for idle. And I know no other way >> to collect idle time per cgroup, other than the time during which it was >> out of the runqueue. >> >> Now what you say about the sleepers don't make that much sense for idle >> because this information is per-cpu as well. >> >> When the se is being dequeued, it means none of its children is running >> on that runqueue. That's idle. > > But does that mean the cgroup is idle? Its impossible to re-construct > the machine state from this per-cpu data if your definition of > cgroup-idle is the time when _all_ cpus are idle. > It is idle for that runqueue, aka cpu. The cgroup itself is idle when all cpus are idle. And yes, then you have 2s per sec of idle in a 2-way system. That's pretty much how a physical box works as well.