All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bruno Ducrot <ducrot@poupinou.org>
To: Mark Bidewell <mark.bidewell@alumni.clemson.edu>
Cc: cpufreq@lists.linux.org.uk
Subject: Re: Possible CPUFreq governor
Date: Wed, 27 Apr 2005 21:04:16 +0200	[thread overview]
Message-ID: <20050427190416.GE2298@poupinou.org> (raw)
In-Reply-To: <46372.130.127.49.120.1114625907.squirrel@130.127.49.120>

On Wed, Apr 27, 2005 at 02:18:27PM -0400, Mark Bidewell wrote:
> It might help to explain how the governor is used. I have a user-mode
> daemon which samples the ACPI temperature every 2 seconds and communicates
> the speed at which non-interactive processes should be run via the sysfs
> interface.  The scheduler will then determine a processes interactivity
> and change the CPU speed accordingly.  In theory the processor could
> change speeds every process switch.

That why I have to do tests in case there is a lot of those process
switch but when modifiying max frequency instead.

> This governor is indeed similar to the ondemand governor.  The distinction
> is that while the ondemand governor expands CPU performance as load
> increases, tempscale must limit performance.  In my opinion, the ultimate
> solution would be a combination of the two governors.  That is, a governor
> which would react in the following way:
> 
> 1)  If the processor is idle, run at low speeds to conserve power (ondemand).
> 2)  Increase performance with demand as long a temperature is low (ondemand)
> 3)  If temperatures get to high, throttle compute-bound processes (tempscale)
> 
> I have done some limited experiments along this line using a user-mode
> daemon to switch governors (as well as speeds) between tempscale and
> ondemand as temperatures change.

That's why I suggest to touch max frequency, not the actual frequency.

This must be done outside a governor, so that you can have both actually.
I'll send you a patch after writing it for testing purpose so that you will
see what I have in mind.

-- 
Bruno Ducrot

--  Which is worse:  ignorance or apathy?
--  Don't know.  Don't care.

  reply	other threads:[~2005-04-27 19:04 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-04-26 23:39 Possible CPUFreq governor Mark Bidewell
2005-04-27 10:53 ` Bruno Ducrot
2005-04-27 11:02   ` Bruno Ducrot
2005-04-27 11:08   ` Ivor Hewitt
2005-04-27 12:30     ` Mark Bidewell
2005-04-27 14:07       ` Bruno Ducrot
2005-04-27 16:20         ` Mark Bidewell
2005-04-27 17:38           ` Bruno Ducrot
2005-04-27 18:18             ` Mark Bidewell
2005-04-27 19:04               ` Bruno Ducrot [this message]
2005-05-02 12:51                 ` Mark Bidewell
2005-04-27 12:25   ` Mark Bidewell
2005-04-27 13:54     ` Bruno Ducrot
2005-04-27 16:10       ` Mark Bidewell
2005-04-27 17:03         ` Bruno Ducrot
2005-04-27 17:19           ` Mark Bidewell
2005-04-27 17:45             ` Bruno Ducrot
  -- strict thread matches above, loose matches on Subject: below --
2005-04-27  0:12 Mark Bidewell
2005-04-27  0:13 Mark Bidewell
2005-05-02 14:02 Pallipadi, Venkatesh
2005-05-02 14:30 ` Mark Bidewell

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=20050427190416.GE2298@poupinou.org \
    --to=ducrot@poupinou.org \
    --cc=cpufreq@lists.linux.org.uk \
    --cc=mark.bidewell@alumni.clemson.edu \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.