public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Paul Jackson <pj@engr.sgi.com>
Cc: kenneth.w.chen@intel.com, torvalds@osdl.org,
	nickpiggin@yahoo.com.au, akpm@osdl.org,
	linux-kernel@vger.kernel.org
Subject: Re: [patch] sched: auto-tune migration costs [was: Re: Industry db benchmark result on recent 2.6 kernels]
Date: Sun, 3 Apr 2005 17:01:02 +0200	[thread overview]
Message-ID: <20050403150102.GA25442@elte.hu> (raw)
In-Reply-To: <20050403071227.666ac33d.pj@engr.sgi.com>


* Paul Jackson <pj@engr.sgi.com> wrote:

> Three more observations.
> 
>  1) The slowest measure_one() calls are, not surprisingly, those for the
>     largest sizes.  At least on my test system of the moment, the plot
>     of cost versus size has one major maximum (a one hump camel, not two).
>     
>     Seems like if we computed from smallest size upward, instead of largest
>     downward, and stopped whenever two consecutive measurements were less
>     than say 70% of the max seen so far, then we could save a nice chunk
>     of the time.
> 
>     Of course, if two hump systems exist, this is not reliable on them.

yes, this is the approach i'm currently working on, but it's not 
reliable yet. (one of the systems i have drifts its cost into infinity 
after the hump, which shouldnt happen)

>  2) Trivial warning fix for printf format mismatch:

thx.

>  3) I was noticing that my test system was only showing a couple of 
>     distinct values for cpu_distance, even though it has 4 distinct 
>     distances for values of node_distance.  So I coded up a variant of 
>     cpu_distance that converts the problem to a node_distance problem, 
>     and got the following cost matrix:
> 
> =================================== begin ===================================
> Total of 8 processors activated (15515.64 BogoMIPS).
> ---------------------
> migration cost matrix (max_cache_size: 0, cpu: -1 MHz):
> ---------------------
>           [00]    [01]    [02]    [03]    [04]    [05]    [06]    [07]
> [00]:     -     4.0(0) 21.7(1) 21.7(1) 25.2(2) 25.2(2) 25.3(3) 25.3(3)
> [01]:   4.0(0)    -    21.7(1) 21.7(1) 25.2(2) 25.2(2) 25.3(3) 25.3(3)
> [02]:  21.7(1) 21.7(1)    -     4.0(0) 25.3(3) 25.3(3) 25.2(2) 25.2(2)
> [03]:  21.7(1) 21.7(1)  4.0(0)    -    25.3(3) 25.3(3) 25.2(2) 25.2(2)
> [04]:  25.2(2) 25.2(2) 25.3(3) 25.3(3)    -     4.0(0) 21.7(1) 21.7(1)
> [05]:  25.2(2) 25.2(2) 25.3(3) 25.3(3)  4.0(0)    -    21.7(1) 21.7(1)
> [06]:  25.3(3) 25.3(3) 25.2(2) 25.2(2) 21.7(1) 21.7(1)    -     4.0(0)
> [07]:  25.3(3) 25.3(3) 25.2(2) 25.2(2) 21.7(1) 21.7(1)  4.0(0)    -
> ---------------------
> cacheflush times [4]: 4.0 (4080540) 21.7 (21781380) 25.2 (25259428) 25.3 (25372682)

i'll first try the bottom-up approach to speed up detection (getting to
the hump is very fast most of the time). The hard part was to create a
workload that generates the hump reliably on a number of boxes - i'm
happy it works on ia64 too.

then we can let the arch override the cpu_distance() method, although i
do think that _if_ there is a significant hierarchy between CPUs it
should be represented via a matching sched-domains hierarchy, and the
full hierarchy should be tuned accordingly.

btw., the migration cost matrix we can later use to tune all the other 
sched-domains balancing related tunables as well - cache_hot_time is 
just the first obvious step. (which also happens to make the most 
difference.)

	Ingo

  reply	other threads:[~2005-04-03 15:01 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-04-02  1:00 Industry db benchmark result on recent 2.6 kernels Chen, Kenneth W
2005-04-02  2:12 ` Nick Piggin
2005-04-02 14:53 ` [patch] sched: auto-tune migration costs [was: Re: Industry db benchmark result on recent 2.6 kernels] Ingo Molnar
2005-04-02 21:22   ` Paul Jackson
2005-04-03  5:53   ` Paul Jackson
2005-04-03  7:04     ` Ingo Molnar
2005-04-03  8:15       ` Paul Jackson
2005-04-03 11:34       ` Paul Jackson
2005-04-03 14:12         ` Paul Jackson
2005-04-03 15:01           ` Ingo Molnar [this message]
2005-04-03 22:30             ` Paul Jackson
2005-04-05  6:53               ` [patch] sched: auto-tune migration costs Andi Kleen
2005-04-05  7:20                 ` Paul Jackson
2005-04-03 15:24           ` [patch] sched: auto-tune migration costs [was: Re: Industry db benchmark result on recent 2.6 kernels] Ingo Molnar
2005-04-03 23:08             ` Paul Jackson
2005-04-04  2:08               ` Nick Piggin
2005-04-04  3:55                 ` Paul Jackson
2005-04-04  5:45                   ` Ingo Molnar
2005-04-04  5:50                     ` Paul Jackson
2005-04-04  5:56                   ` Nick Piggin
2005-04-04  6:38                     ` Paul Jackson
2005-04-04  6:48                       ` Ingo Molnar
2005-04-04  7:37                         ` Paul Jackson
2005-04-04  6:50               ` Ingo Molnar
2005-04-04  7:27                 ` Paul Jackson
2005-04-03 14:29         ` Ingo Molnar
2005-04-03 23:15           ` Paul Jackson
2005-04-04  1:31           ` Chen, Kenneth W
2005-04-04  6:24             ` Ingo Molnar
2005-04-04  6:39               ` Ingo Molnar
2005-04-06  0:08               ` Chen, Kenneth W
2005-04-04  4:25         ` Andy Lutomirski
2005-04-04  4:36           ` Paul Jackson
2005-04-04  1:11       ` Chen, Kenneth W
2005-04-04 11:37         ` Ingo Molnar
2005-04-04 17:27           ` Paul Jackson
2005-04-05  1:43           ` Chen, Kenneth W
2005-04-05  1:49             ` Ingo Molnar
2005-04-05  3:04               ` Ingo Molnar
2005-04-06  3:33                 ` Chen, Kenneth W
2005-04-06  6:45                   ` Ingo Molnar
2005-04-08  2:27                     ` Chen, Kenneth W
2005-04-03  9:01     ` Paul Jackson

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=20050403150102.GA25442@elte.hu \
    --to=mingo@elte.hu \
    --cc=akpm@osdl.org \
    --cc=kenneth.w.chen@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nickpiggin@yahoo.com.au \
    --cc=pj@engr.sgi.com \
    --cc=torvalds@osdl.org \
    /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