public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Peter Williams <pwil3058@bigpond.net.au>
To: balbir@in.ibm.com
Cc: Martin Ohlin <martin.ohlin@control.lth.se>, linux-kernel@vger.kernel.org
Subject: Re: A nice CPU resource controller
Date: Thu, 31 Aug 2006 11:07:38 +1000	[thread overview]
Message-ID: <44F6365A.8010201@bigpond.net.au> (raw)
In-Reply-To: <661de9470608300841o757a8704te4402a7015b230c5@mail.gmail.com>

Balbir Singh wrote:
> On 8/30/06, Martin Ohlin <martin.ohlin@control.lth.se> wrote:
>> To those interested
>>
>> I have been working on a CPU resource controller using the nice value as
>> a control signal. At the moment, the control is done on a
>> per-task-level, but I have plans to extend it to groups of tasks. The
>> control is based on a PI-controller (Proportional, Integral), using an
>> execution time measurement as input to the controller, and the output
>> from the controller as nice value.
>>
> 
> The CKRM e-series is a PID based CPU Controller. It did a good job of
> controlling and smoothing out the load (and variations) and even
> worked with groups. But it achieved all this through some amount of
> complexity. How do you plan to extend the idea to groups? Do you have
> any code that we can look at?
> 
> I do not understand controlling the nice value? Most cpu control the
> bandwidth/time - are there any advantages to controlling the nice
> value?

Trying to control CPU allocations purely using time allocations will 
only work well for CPU bound processes.  Furthermore, the faster CPUs 
become the more this will be the case.

> How does this interplay with dynamic priorities that the
> scheduler currently maintains?

But your implication here is valid.  It is better to fiddle with the 
dynamic priorities than with nice as this leaves nice for its primary 
purpose of enabling the sysadmin to effect the allocation of CPU 
resources based on external considerations.  Having said that I would 
also opine that the basic mechanism this author uses to fiddle the nice 
values could be applied to the dynamic priorities instead with the key 
difference being that nice can be fiddled from outside the scheduler but 
you really need to be inside the scheduler to fiddle with dynamic 
priorities.

> 
>> Using the controller, it is possible to make CPU reservations that in a
>> soft way guarante that tasks achieve as much resources as the
>> corresponding reference indicates.
>>
>> For those interested, the concept is described in more detail along with
>> experiments in the first part of my thesis available at:
>> http://www.control.lth.se/database/publications/article.pike?artkey=ohlin06lic 
>>
> 
> Read one more paper - time
> 
> Balbir
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/


-- 
Peter Williams                                   pwil3058@bigpond.net.au

"Learning, n. The kind of ignorance distinguishing the studious."
  -- Ambrose Bierce

  parent reply	other threads:[~2006-08-31  1:07 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-30 15:14 A nice CPU resource controller Martin Ohlin
2006-08-30 15:41 ` Balbir Singh
2006-08-30 16:13   ` Martin Ohlin
2006-08-31  6:03     ` Balbir Singh
2006-08-31  1:07   ` Peter Williams [this message]
2006-08-31  6:17     ` Balbir Singh
2006-08-31 10:08       ` Peter Williams
2006-08-31 10:44       ` Mike Galbraith
2006-08-31  6:53     ` Mike Galbraith
2006-08-31  5:21       ` Peter Williams
2006-08-31  7:44         ` Mike Galbraith
2006-08-31  7:42       ` Mike Galbraith
2006-08-31 10:35         ` Martin Ohlin
2006-08-31 14:17           ` Mike Galbraith
2006-08-31 16:01           ` Chris Friesen
2006-08-31 19:14             ` Mike Galbraith
2006-08-31 23:52           ` Peter Williams
2006-08-31 10:21   ` Martin Ohlin
2006-08-31 11:13     ` Balbir Singh
2006-08-31 18:25 ` Peter Grandi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=44F6365A.8010201@bigpond.net.au \
    --to=pwil3058@bigpond.net.au \
    --cc=balbir@in.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=martin.ohlin@control.lth.se \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox