From: "Chen, Kenneth W" <kenneth.w.chen@intel.com>
To: "'Con Kolivas'" <kernel@kolivas.org>, <linux-kernel@vger.kernel.org>
Cc: "Nick Piggin" <nickpiggin@yahoo.com.au>,
"'Chris Mason'" <mason@suse.com>, "Ingo Molnar" <mingo@elte.hu>
Subject: RE: [PATCH RFC] smt nice introduces significant lock contention
Date: Fri, 2 Jun 2006 14:54:11 -0700 [thread overview]
Message-ID: <000201c6868f$14ddbfc0$df34030a@amr.corp.intel.com> (raw)
In-Reply-To: <200606022316.41139.kernel@kolivas.org>
Con Kolivas wrote on Friday, June 02, 2006 6:17 AM
> On Friday 02 June 2006 20:30, Con Kolivas wrote:
> > On Friday 02 June 2006 18:56, Nick Piggin wrote:
> > > And why do we lock all siblings in the other case, for that matter? (not
> > > that it makes much difference except on niagara today).
> >
> > If we spinlock (and don't trylock as you're proposing) we'd have to do a
> > double rq lock for each sibling. I guess half the time double_rq_lock will
> > only be locking one runqueue... with 32 runqueues we either try to lock all
> > 32 or lock 1.5 runqueues 32 times... ugh both are ugly.
>
> Thinking some more on this it is also clear that the concept of per_cpu_gain
> for smt is basically wrong once we get beyond straight forward 2 thread
> hyperthreading. If we have more than 2 thread units per physical core, the
> per cpu gain per logical core will decrease the more threads are running on
> it. While it's always been obvious the gain per logical core is entirely
> dependant on the type of workload and wont be a simple 25% increase in cpu
> power, it is clear that even if we assume an "overall" increase in cpu for
> each logical core added, there will be some non linear function relating
> power increase to thread units used. :-|
In the context of having more than 2 sibling CPUs in a domain, doesn't the
current code also suffer from thunder hurd problem as well? When high
priority task goes to sleep, it will wake up *all* sibling sleepers and
then they will all fight for CPU resource, but potentially only one will win?
next prev parent reply other threads:[~2006-06-02 21:54 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-06-01 22:55 Chris Mason
2006-06-01 23:57 ` Chen, Kenneth W
2006-06-02 1:59 ` Con Kolivas
2006-06-02 2:28 ` Con Kolivas
2006-06-02 3:55 ` Con Kolivas
2006-06-02 4:18 ` Nick Piggin
2006-06-02 6:08 ` Con Kolivas
2006-06-02 7:53 ` Nick Piggin
2006-06-02 8:17 ` Con Kolivas
2006-06-02 8:28 ` Nick Piggin
2006-06-02 8:34 ` Chen, Kenneth W
2006-06-02 8:56 ` Nick Piggin
2006-06-02 9:17 ` Chen, Kenneth W
2006-06-02 9:25 ` Con Kolivas
2006-06-02 9:31 ` Chen, Kenneth W
2006-06-02 9:34 ` Con Kolivas
2006-06-02 9:53 ` Chen, Kenneth W
2006-06-02 10:12 ` Con Kolivas
2006-06-02 20:53 ` Chen, Kenneth W
2006-06-02 22:15 ` Con Kolivas
2006-06-02 22:19 ` Chen, Kenneth W
2006-06-02 22:31 ` Con Kolivas
2006-06-02 22:58 ` Chen, Kenneth W
2006-06-03 0:02 ` Con Kolivas
2006-06-03 0:08 ` Chen, Kenneth W
2006-06-03 0:27 ` Con Kolivas
2006-06-02 9:36 ` Chen, Kenneth W
2006-06-02 10:30 ` Con Kolivas
2006-06-02 13:16 ` Con Kolivas
2006-06-02 21:54 ` Chen, Kenneth W [this message]
2006-06-02 22:04 ` Con Kolivas
2006-06-02 22:14 ` Chen, Kenneth W
2006-06-02 10:19 ` Con Kolivas
2006-06-02 20:59 ` Chen, Kenneth W
2006-06-02 8:38 ` Chen, Kenneth W
2006-06-02 8:24 ` Chen, Kenneth W
2006-06-02 8:31 ` Chen, Kenneth W
2006-06-02 8:50 ` Chen, Kenneth W
2006-06-02 2:35 ` Chen, Kenneth W
2006-06-02 3:04 ` Con Kolivas
2006-06-02 3:23 ` 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='000201c6868f$14ddbfc0$df34030a@amr.corp.intel.com' \
--to=kenneth.w.chen@intel.com \
--cc=kernel@kolivas.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mason@suse.com \
--cc=mingo@elte.hu \
--cc=nickpiggin@yahoo.com.au \
/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
Powered by JetHome