Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 20 Dec 2003 00:24:29 +1100
From:      Tim Robbins <tjr@freebsd.org>
To:        src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/sys/kern sysv_sem.c
Message-ID:  <20031219132429.GA913@wombat.robbins.dropbear.id.au>
In-Reply-To: <200312191307.hBJD7HYo099172@repoman.freebsd.org>
References:  <200312191307.hBJD7HYo099172@repoman.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Dec 19, 2003 at 05:07:17AM -0800, Tim J. Robbins wrote:
> tjr         2003/12/19 05:07:17 PST
> 
>   FreeBSD src repository
> 
>   Modified files:
>     sys/kern             sysv_sem.c 
>   Log:
>   Reduce the overhead of semop() by using the kernel stack instead of
>   malloc'd memory to store the operations array if it is small enough
>   to fit.

FWIW, wall time for 100,000 increment/decrement pairs on a single semaphore:

x before
+ after
+--------------------------------------------------------------------------+
| ++ +                                                              xxx    |
|+++++ +                                                            xxx   x|
| |A_|                                                              |A_|   |
+--------------------------------------------------------------------------+
    N           Min           Max        Median           Avg        Stddev
x   9          5.35           5.5          5.39     5.3933333   0.044440972
+   9           3.8          3.93          3.85     3.8566667   0.041231056
Difference at 95.0% confidence
	-1.53667 +/- 0.0428394
	-28.492% +/- 0.794303%
	(Student's t, pooled s = 0.0428661)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20031219132429.GA913>