From: Anton Blanchard <anton@samba.org>
To: Ingo Molnar <mingo@elte.hu>
Cc: Zwane Mwaikambo <zwane@arm.linux.org.uk>,
"Martin J. Bligh" <mbligh@aracnet.com>,
linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: [patch] sched-HT-2.6.0-test11-A5
Date: Mon, 8 Dec 2003 03:39:14 +1100 [thread overview]
Message-ID: <20031207163914.GB19412@krispykreme> (raw)
In-Reply-To: <Pine.LNX.4.58.0312071433300.28463@earth>
Hi,
> i've seen a similar crash once on a 2-way (4-way) HT box, so there some
> startup race going on most likely.
Im seeing bootup crashes every now and then on a ppc64 box too. A few
other things Ive noticed:
- nr_running looks to be wrong. On an idle machine just after booting:
00:07:20 up 14 min, 3 users, load average: 8.00, 7.67, 4.95
Its a 4 core 8 thread machine, so perhaps we are counting idle threads.
- The printk had me confused, we are really mapping cpu2 onto cpu1s runqueue.
Patch below.
- I tried the HT scheduler with NUMA enabled. Same machine, 4 core 8
threads, each NUMA node has 2 cores, 4 threads. Its easy to end up in a sub
optimal state:
Cpu0 : 0.0% user, 0.0% system, 0.0% nice, 100.0% idle, 0.0% IO-wait
Cpu1 : 0.0% user, 0.0% system, 0.0% nice, 100.0% idle, 0.0% IO-wait
Cpu2 : 100.0% user, 0.0% system, 0.0% nice, 0.0% idle, 0.0% IO-wait
Cpu3 : 100.0% user, 0.0% system, 0.0% nice, 0.0% idle, 0.0% IO-wait
Cpu4 : 100.0% user, 0.0% system, 0.0% nice, 0.0% idle, 0.0% IO-wait
Cpu5 : 0.0% user, 0.0% system, 0.0% nice, 100.0% idle, 0.0% IO-wait
Cpu6 : 100.0% user, 0.0% system, 0.0% nice, 0.0% idle, 0.0% IO-wait
Cpu7 : 0.7% user, 0.7% system, 0.0% nice, 98.6% idle, 0.0% IO-wait
cpu0/1 are an SMT pair, cpu 0-3 are a NUMA node. As you can see cpu0/1
is free and cpu2/3 is busy on both threads. So far we have noticed
nr_cpus_node should probably be nr_runqueues_node now, otherwise the
inter node balancing code could make bad decisions. However in this case
the imbalance is within the node, so Im not sure why cpu0/1 runqueue
hasnt stolen a task from cpu2/3.
Anton
--- foo/kernel/sched.c.ff 2003-12-03 02:03:41.000000000 -0600
+++ foo/kernel/sched.c 2003-12-04 11:37:40.980022085 -0600
@@ -1452,7 +1452,7 @@
runqueue_t *rq2 = cpu_rq(cpu2);
int cpu2_idx_orig = cpu_idx(cpu2), cpu2_idx;
- printk("mapping CPU#%d's runqueue to CPU#%d's runqueue.\n", cpu1, cpu2);
+ printk("mapping CPU#%d's runqueue to CPU#%d's runqueue.\n", cpu2, cpu1);
BUG_ON(rq1 == rq2 || rq2->nr_running || rq_idx(cpu1) != cpu1);
/*
* At this point, we dont have anything in the runqueue yet. So,
next prev parent reply other threads:[~2003-12-07 16:43 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20031117021511.GA5682@averell>
[not found] ` <3FB83790.3060003@cyberone.com.au>
[not found] ` <20031117141548.GB1770@colin2.muc.de>
[not found] ` <Pine.LNX.4.56.0311171638140.29083@earth>
[not found] ` <20031118173607.GA88556@colin2.muc.de>
[not found] ` <Pine.LNX.4.56.0311181846360.23128@earth>
[not found] ` <20031118235710.GA10075@colin2.muc.de>
[not found] ` <3FBAF84B.3050203@cyberone.com.au>
[not found] ` <501330000.1069443756@flay>
[not found] ` <3FBF099F.8070403@cyberone.com.au>
[not found] ` <1010800000.1069532100@[10.10.2.4]>
[not found] ` <3FC01817.3090705@cyberone.com.au>
2003-11-23 11:57 ` [RFC] generalise scheduling classes Nick Piggin
2003-11-23 12:01 ` Ingo Molnar
2003-11-23 12:15 ` Nick Piggin
2003-11-23 12:21 ` Ingo Molnar
2003-11-23 16:26 ` Martin J. Bligh
2003-12-01 10:08 ` [patch] sched-HT-2.6.0-test11-A5 Ingo Molnar
2003-12-06 19:01 ` Martin J. Bligh
2003-12-06 21:40 ` Zwane Mwaikambo
2003-12-07 13:34 ` Ingo Molnar
2003-12-07 16:39 ` Anton Blanchard [this message]
2003-12-07 17:16 ` Martin J. Bligh
2003-12-07 18:31 ` Zwane Mwaikambo
2003-12-07 20:17 ` Anton Blanchard
2003-12-08 17:57 ` Ingo Molnar
2003-12-07 17:22 ` Anton Blanchard
2003-12-08 17:56 ` William Lee Irwin III
2003-12-08 18:21 ` Ingo Molnar
2003-12-08 19:12 ` William Lee Irwin III
2003-12-08 22:20 ` age
2003-12-08 19:36 ` William Lee Irwin III
2003-11-23 21:38 ` [RFC] generalise scheduling classes William Lee Irwin III
2003-11-24 2:19 ` Nick Piggin
2003-11-24 1:06 ` Anton Blanchard
2003-11-24 2:26 ` Nick Piggin
2003-11-24 2:39 ` Davide Libenzi
2003-11-24 22:48 ` bill davidsen
2003-11-25 1:46 ` Nick Piggin
2003-11-25 16:23 ` Bill Davidsen
2003-11-30 9:35 ` [RFC] Further SMP / NUMA scheduler improvements Nick Piggin
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=20031207163914.GB19412@krispykreme \
--to=anton@samba.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mbligh@aracnet.com \
--cc=mingo@elte.hu \
--cc=zwane@arm.linux.org.uk \
/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
all inboxes | Powered by JetHome®