All of lore.kernel.org
 help / color / mirror / Atom feed
From: Con Kolivas <kernel@kolivas.org>
To: Linux Kernel Mailinglist <linux-kernel@vger.kernel.org>
Cc: Nick Piggin <piggin@cyberone.com.au>, Ingo Molnar <mingo@elte.hu>,
	Andrew Morton <akpm@osdl.org>,
	"Martin J. Bligh" <mbligh@aracnet.com>,
	William Lee Irwin III <wli@holomorphy.com>
Subject: [PATCH] Performance regression in 2.6.7-rc3
Date: Sat, 12 Jun 2004 10:28:00 +1000	[thread overview]
Message-ID: <200406121028.06812.kernel@kolivas.org> (raw)

[-- Attachment #1: Type: Text/Plain, Size: 1222 bytes --]

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi all

The OSDL robot monkeys revealed a massive reproducible regression in the 
dbt3-pgsql benchmark which could be related to MBligh's measure regression.


2.6.7-rc2: http://khack.osdl.org/stp/293625/
Composite 	Query Processing Power 	Throughput Numerical Quantity
199.38 	152.52 	260.63

vs

2.6.7-rc3: http://khack.osdl.org/stp/293704/
Composite 	Query Processing Power 	Throughput Numerical Quantity
152.13 	146.36 	158.12


with a little bit of detective work and help from Wli we tracked down that 
this patch caused it:
[PATCH] sched: improve wakeup-affinity
A massive increase in idle time was observed and the throughput dropped by 40%
Reversing this patch gave these results:

backsched1: http://khack.osdl.org/stp/293865/
Composite 	Query Processing Power 	Throughput Numerical Quantity
193.93 	145.95 	257.67


It may be best to reverse this patch until the regression is better 
understood.
Here is a patch reversing it:

Con
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQFAyk4SZUg7+tp6mRURAk5RAKCKIxzmRS3u+gs8W5gVyGgvL6glUgCeNggF
8mBUT4HtP4g5d/MViraZ9ds=
=vj+s
-----END PGP SIGNATURE-----

[-- Attachment #2: backsched1.patch --]
[-- Type: text/x-diff, Size: 824 bytes --]

--- linux-2.6.7-rc3-base/kernel/sched.c	2004-06-10 23:29:04.000000000 +1000
+++ linux-2.6.7-rc3-backsched/kernel/sched.c	2004-06-12 02:11:13.600754377 +1000
@@ -770,8 +770,7 @@ static int try_to_wake_up(task_t * p, un
 		this_load -= SCHED_LOAD_SCALE;
 
 	/* Don't pull the task off an idle CPU to a busy one */
-	if (load < SCHED_LOAD_SCALE && load + this_load > SCHED_LOAD_SCALE
-			&& this_load > load)
+	if (load < SCHED_LOAD_SCALE/2 && this_load > SCHED_LOAD_SCALE/2)
 		goto out_set_cpu;
 
 	new_cpu = this_cpu; /* Wake to this CPU if we can */
@@ -1633,7 +1632,8 @@ nextgroup:
 	return busiest;
 
 out_balanced:
-	if (busiest && idle != NOT_IDLE && max_load > SCHED_LOAD_SCALE) {
+	if (busiest && (idle == NEWLY_IDLE ||
+			(idle == IDLE && max_load > SCHED_LOAD_SCALE)) ) {
 		*imbalance = 1;
 		return busiest;
 	}

             reply	other threads:[~2004-06-12  0:30 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-06-12  0:28 Con Kolivas [this message]
2004-06-12  7:58 ` [PATCH] Performance regression in 2.6.7-rc3 Nick Piggin
2004-06-15  4:56 ` Ingo Molnar
2004-06-15 13:11   ` Con Kolivas
2004-06-15 15:02   ` Martin J. Bligh
2004-06-16  2:14     ` Herbert Xu
2004-06-16  3:05       ` Nick Piggin
2004-06-16  3:10         ` Linus Torvalds
2004-06-16  3:18           ` Nick Piggin
2004-06-16  7:02           ` Ingo Molnar
2004-06-16  3:09       ` Linus Torvalds
2004-06-16 14:54         ` Martin J. Bligh
2004-06-16  3:00   ` Nick Piggin
2004-06-16  1:22     ` Con Kolivas

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=200406121028.06812.kernel@kolivas.org \
    --to=kernel@kolivas.org \
    --cc=akpm@osdl.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mbligh@aracnet.com \
    --cc=mingo@elte.hu \
    --cc=piggin@cyberone.com.au \
    --cc=wli@holomorphy.com \
    /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.