Re: [PATCH 2/3] sched: idle: Add sched balance option

From: Daniel Lezcano
Date: Mon Apr 28 2014 - 07:07:41 EST


On 04/28/2014 12:28 PM, Peter Zijlstra wrote:
On Mon, Apr 28, 2014 at 12:09:20PM +0200, Daniel Lezcano wrote:
I agree a numerical value is not flexible. But it sounds weird to put a
scheduler option in the sysfs and maybe more options will follow.

I am wondering if we shouldn't create a new cgroup for 'energy' and put
everything in there. So we will have more flexibility for extension and we
will be able to create a group of tasks for performance and a group of tasks
for energy saving.

Does it make sense ?

The old knobs used to live here:

-What: /sys/devices/system/cpu/sched_mc_power_savings
- /sys/devices/system/cpu/sched_smt_power_savings

Ah right.

Not entirely sure that's a fine place, but it has precedent.

I share your doubts about the right place.

I'm really wondering if the cgroup couldn't be a good solution:

Amit pointed the conflict about the power vs performance with some applications. We want to have for example a game to run fast performance and some other application to save power.

The cgroup will allow to:

* eg. create a couple of cgroup one for performance and the other one for power and assign the different applications to one of these group

* tweak the options just for a group of processes. Depending of the behavior of the task, the userspace can create and change some options for a specific application for optimum performance or energy saving

* add more energy options in a place easy to extend

* use string based options

* alternatively use a single configuration for the entire system

* use the event based file to trigger event about power consumption (threshold reached) and from there we can easily freeze the group of processes consuming too much energy

The cgroup will provide a highly configurable mechanism based on tasks and could use with some other cgroup subsys (eg. to force the tasks on a set of cpus).

IMHO, the cgroup is a good place.


--
<http://www.linaro.org/> Linaro.org â Open source software for ARM SoCs

Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/