mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: kumon@flab.fujitsu.co.jp
To: Alexander Viro <viro@math.psu.edu>
Cc: "Jeff V. Merkey" <jmerkey@timpanogas.org>,
	kumon@flab.fujitsu.co.jp, Rik van Riel <riel@conectiva.com.br>,
	linux-kernel@vger.kernel.org
Cc: kumon@flab.fujitsu.co.jp
Subject: Re: Negative scalability by removal of lock_kernel()?(Was: Strange performance behavior of 2.4.0-test9)
Date: Fri, 27 Oct 2000 19:11:19 +0900	[thread overview]
Message-ID: <200010271011.TAA23564@asami.proc.flab.fujitsu.co.jp> (raw)
In-Reply-To: <Pine.GSO.4.21.0010270257550.18660-100000@weyl.math.psu.edu>
In-Reply-To: <39F92187.A7621A09@timpanogas.org> <Pine.GSO.4.21.0010270257550.18660-100000@weyl.math.psu.edu>

Alexander Viro writes:
 > BTW, what spinlocks get contention in variant without BKL? And what about
 > comparison between the BKL and non-BKL versions? If it's something like
 > 	BKL	no BKL
 > 4-way	50	20
 > 8-way	30	30
 > - something is certainly wrong, but restoring the BKL is _not_ a win.

the measured performance is:
			4way->8way
	2.4.0-test1	2816->3702 (31%up)
	2.4.0-test8	4006->5287 (63%up)
	2.4.0-test9	3669->2193 (40%down)

So, roughly speaking,
 	BKL	no BKL
4-way	40	36
8-way	53	22
	- Above are the comparison between test8 and test9.

Test9 with BKL shows 5249 @8way, nearly equal to test8 @8way.

 > scenarios, but... Seriously, folks, could you compare the 4 variants above
 > and gather the contention data for the -test9 on your loads? That would help
 > a lot.

What kind of contention data you requested?
* kernel-lock spining time
* semaphore task switching time
 ...

Now, I understand the difference of test8 and test9.
test8 uses kernel_lock() to protect critical region,
test9 uses up/down semaphor for that.

FYI, I resend following data again.

> The following table shows one minute average of "vmstat 1".
> 
>  configuration Req/s    | r     b       intr    c-sw    user    os      idle
> ------------------------+--------------------------------------------------
> 2.4.0t1 4cpu    2816    | 60    0       28877    5103   18      82       0 
>         8cpu    3702    | 37    0       33495   16387   14      86       0 
> 2.4.0t8 4cpu    4066    | 57    0       38743    8674   27      73       0 
>         8cpu    5287    | 33    0       40755   30626   21      78       0 
> 2.4.0t9 4cpu    3669    | 53    3       35822   18898   25      73       2 
>         8cpu    2193    |  5    8       22114   94609    9      52      39 

context switch count on test9 is 2-3 times bigger.

And, using the above table, average transaction time and its
breakdowns can be calculated as follows.

		time/req	USER	OS	IDLE
 2.4.0t1 4cpu    1.42ms    |	0.26ms	1.16ms	   0ms
         8cpu    2.16ms    |	0.30ms	1.85ms	   0ms
 2.4.0t8 4cpu    0.98ms    |	0.26ms	0.72ms	   0ms
         8cpu    1.44ms    |	0.30ms	1.12ms	   0ms
 2.4.0t9 4cpu    1.09ms    |	0.27ms	0.80ms	0.02ms
         8cpu    3.65ms    |	0.33ms	1.90ms	1.42ms

Test9 needs longer OS time than test8, especialy on 8cpu (80% longer).
Test9 needs longer USER time than test8 on 8cpu.
Test9 idle too much.

Frequent context switchs eat OS time.
Frequent process migrations eat USER time.

I think, the critical region is too small to be protected by semaphor
and task-switch.

--
Computer Systems Laboratory, Fujitsu Labs.
kumon@flab.fujitsu.co.jp
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

      parent reply	other threads:[~2000-10-27 10:12 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <200010261405.XAA19135@asami.proc.flab.fujitsu.co.jp>
     [not found] ` <200010250736.QAA12373@asami.proc.flab.fujitsu.co.jp>
     [not found]   ` <Pine.LNX.4.21.0010251242050.943-100000@duckman.distro.conectiva>
     [not found]     ` <200010260138.KAA17028@asami.proc.flab.fujitsu.co.jp>
2000-10-27  6:24       ` Negative scalability by removal of lock_kernel()? (Was: " kumon
2000-10-27  6:32         ` Negative scalability by removal of lock_kernel()?(Was: " Jeff V. Merkey
2000-10-27  7:13           ` Alexander Viro
2000-10-27  7:46             ` Andi Kleen
2000-10-27 10:23               ` Andrew Morton
2000-10-27 10:25                 ` Andi Kleen
2000-10-27 12:57               ` [PATCH] " kumon
2000-10-28 15:46                 ` Andrew Morton
2000-10-28 15:58                   ` Andi Kleen
2000-10-28 16:05                   ` Jeff Garzik
2000-10-28 16:20                   ` [PATCH] Re: Negative scalability by removal of lock_kernel()?(Was: Alan Cox
2000-10-29 19:45                     ` dean gaudet
2000-10-30  6:29                       ` Andi Kleen
2000-10-30 15:28                         ` Andrea Arcangeli
2000-10-30 16:36                           ` Rik van Riel
2000-10-30 18:02                             ` Andrea Arcangeli
2000-10-28 16:46                   ` [PATCH] Re: Negative scalability by removal of lock_kernel()?(Was: Strange performance behavior of 2.4.0-test9) Andrew Morton
2000-10-30  9:27                   ` kumon
2000-10-30 15:00                     ` Andrew Morton
2000-10-30 23:24                       ` dean gaudet
2000-11-04  5:08                         ` [PATCH] Re: Negative scalability by removal of lock_kernel()?(Was:Strange " Andrew Morton
2000-11-04  6:23                           ` Linus Torvalds
2000-11-04 10:54                             ` [PATCH] Re: Negative scalability by removal of Alan Cox
2000-11-04 17:22                               ` Linus Torvalds
2000-11-05 16:22                                 ` Andrea Arcangeli
2000-11-05 20:21                               ` dean gaudet
2000-11-05 22:43                                 ` Alan Cox
2000-11-04 20:03                             ` [PATCH] Re: Negative scalability by removal of lock_kernel()?(Was:Strange performance behavior of 2.4.0-test9) dean gaudet
2000-11-04 20:42                               ` [PATCH] Re: Negative scalability by removal of lock_kernel()?(Was:Strange Alan Cox
2000-11-04 20:11                           ` [PATCH] Re: Negative scalability by removal of lock_kernel()?(Was:Strange performance behavior of 2.4.0-test9) dean gaudet
2000-11-04 20:43                             ` [PATCH] Re: Negative scalability by removal of lock_kernel()?(Was:Strange Alan Cox
2000-11-05  4:52                               ` dean gaudet
2000-10-31 15:36                 ` [PATCH] Re: Negative scalability by removal of lock_kernel()?(Was: Strange performance behavior of 2.4.0-test9) Andrew Morton
2000-11-02 12:50                   ` kumon
2000-11-01  1:02                 ` kumon
2000-11-02 11:09                 ` kumon
2000-11-04  5:07                   ` Andrew Morton
2000-10-27  8:17             ` Jeff V. Merkey
2000-11-04  5:55             ` Preemptive scheduling of woken-up processes kumon
2000-10-27 10:11           ` kumon [this message]

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=200010271011.TAA23564@asami.proc.flab.fujitsu.co.jp \
    --to=kumon@flab.fujitsu.co.jp \
    --cc=jmerkey@timpanogas.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=riel@conectiva.com.br \
    --cc=viro@math.psu.edu \
    /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®