Re: [RFC PATCH 02/10] sched: Task placement for heterogeneous systemsbased on task load-tracking

From: Amit Kucheria
Date: Thu Oct 04 2012 - 02:54:26 EST


On Thu, Oct 4, 2012 at 11:32 AM, Viresh Kumar <viresh.kumar@xxxxxxxxxx> wrote:
> Hi Morten,
>
> On 22 September 2012 00:02, <morten.rasmussen@xxxxxxx> wrote:
>> From: Morten Rasmussen <morten.rasmussen@xxxxxxx>
>>
>> This patch introduces the basic SCHED_HMP infrastructure. Each class of
>> cpus is represented by a hmp_domain and tasks will only be moved between
>> these domains when their load profiles suggest it is beneficial.
>>
>> SCHED_HMP relies heavily on the task load-tracking introduced in Paul
>> Turners fair group scheduling patch set:
>>
>> <https://lkml.org/lkml/2012/8/23/267>
>>
>> SCHED_HMP requires that the platform implements arch_get_hmp_domains()
>> which should set up the platform specific list of hmp_domains. It is
>> also assumed that the platform disables SD_LOAD_BALANCE for the
>> appropriate sched_domains.
>
> An explanation of this requirement would be helpful here.
>
>> Tasks placement takes place every time a task is to be inserted into
>> a runqueue based on its load history. The task placement decision is
>> based on load thresholds.
>>
>> There are no restrictions on the number of hmp_domains, however,
>> multiple (>2) has not been tested and the up/down migration policy is
>> rather simple.
>>
>> Signed-off-by: Morten Rasmussen <morten.rasmussen@xxxxxxx>
>> ---
>> arch/arm/Kconfig | 17 +++++
>> include/linux/sched.h | 6 ++
>> kernel/sched/fair.c | 168 +++++++++++++++++++++++++++++++++++++++++++++++++
>> kernel/sched/sched.h | 6 ++
>> 4 files changed, 197 insertions(+)
>>
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index f4a5d58..5b09684 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -1554,6 +1554,23 @@ config SCHED_SMT
>> MultiThreading at a cost of slightly increased overhead in some
>> places. If unsure say N here.
>>
>> +config DISABLE_CPU_SCHED_DOMAIN_BALANCE
>> + bool "(EXPERIMENTAL) Disable CPU level scheduler load-balancing"
>> + help
>> + Disables scheduler load-balancing at CPU sched domain level.
>
> Shouldn't this depend on EXPERIMENTAL?

EXPERIMENTAL might be on its way out: https://lkml.org/lkml/2012/10/2/398
--
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/