lkml.org 
[lkml]   [2011]   [Sep]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 6/9] Include idle and iowait fields in cpuacct
On 09/20/2011 09:58 AM, Peter Zijlstra wrote:
> On Tue, 2011-09-20 at 09:36 -0300, Glauber Costa wrote:
>> On 09/20/2011 06:21 AM, Peter Zijlstra wrote:
>>> On Wed, 2011-09-14 at 17:04 -0300, Glauber Costa wrote:
>>>> These are slightly different from the others though:
>>>> (note to reviewers: might be better to put those in a separate
>>>> array?)
>>>>
>>>> Since idle/iowait are a property of the system - by definition,
>>>> no process from any cgroup is running when the system is idle,
>>>> they are system wide. So what these fields really mean, are baselines
>>>> for when the cgroup was created. It allows the cgroup to start
>>>> counting idle/iowait from 0.
>>>
>>> Alternatively you can make iowait based on nr_uninterruptible per cgroup
>>> and count all ticks _this_ cgroup was idle.
>> You think?
>>
>> Humm,humm... maybe...
>> iowait can indeed be seen as a process group characteristic. I was
>> mainly concerned about overhead here, specially for the idle case:
>
> The overhead of accounting per cgroup nr_uninterruptible is the worst I
> think, that's in the sleep/wakeup paths.
>
>> If we are idle, there is no task context we can draw from, since the
>> task in the cpu is the idle task. So we end up having to touch all
>> cgroups... Or am I missing something?
>>
>> Sounds expensive.
>
> Count the total number of ticks on the cpu (I think we already have
> that) and subtract the number of ticks in this cgroup (I think we also
> already have that), which should yield: number of ticks not in this
> cgroup, aka number of ticks this cgroup was idle.
No , no... remember steal time.



\
 
 \ /
  Last update: 2011-09-20 15:01    [W:0.122 / U:0.480 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site