From: Luc Van Oostenryck <luc.vanoostenryck@easynet.be>
To: Kernel mailing list <linux-kernel@vger.kernel.org>
Cc: mingo@elte.hu
Subject: Re: O(1) scheduler, 2.5.2-pre9-C1: some results
Date: Sun, 06 Jan 2002 23:15:18 +0100 [thread overview]
Message-ID: <3C38CC76.1DED77DD@easynet.be> (raw)
In-Reply-To: <Pine.LNX.4.33.0201061901270.6124-100000@localhost.localdomain>
[-- Attachment #1: Type: text/plain, Size: 633 bytes --]
Ingo Molnar wrote:
>
> i've uploaded an updated O(1) scheduler patch, against 2.5.2-pre9:
>
> http://redhat.com/~mingo/O(1)-scheduler/sched-O1-2.5.2-C1.patch
> http://redhat.com/~mingo/O(1)-scheduler/sched-O1-2.4.17-C1.patch
>
> only minimal fixes were added to the code, the goal is to reach a stable
> base.
>
Here is some comparaison I have made between vanilla -pre9 and Ingo's C1
patch
using parts of lmbench and variing background process CPU bounded.
Result in short: seems rock solid and really O(1)!
For imformation: running on PentiumII/400MHz 196Mb RAM uniprocessor
(alas!).
--
Luc Van Oostenryck
[-- Attachment #2: result-ctxt-2.5.2-pre9 --]
[-- Type: application/octet-stream, Size: 1510 bytes --]
2.5.2-pre9
# latency process
Process fork+exit: 367.5333 microseconds
Process fork+exit: 367.2000 microseconds
Process fork+exit: 367.0000 microseconds
Process fork+exit: 367.8667 microseconds
Process fork+exit: 367.0000 microseconds
Process fork+execve: 1976.6667 microseconds
Process fork+execve: 1990.6667 microseconds
Process fork+execve: 1984.6667 microseconds
Process fork+execve: 1992.3333 microseconds
Process fork+execve: 1986.6667 microseconds
Process fork+/bin/sh -c: 7669.0000 microseconds
Process fork+/bin/sh -c: 7704.0000 microseconds
Process fork+/bin/sh -c: 7695.0000 microseconds
Process fork+/bin/sh -c: 7662.0000 microseconds
Process fork+/bin/sh -c: 7659.0000 microseconds
# latency select
Select on 10 fd's: 4.6042 microseconds
Select on 100 fd's: 20.1222 microseconds
Select on 250 fd's: 46.0167 microseconds
Select on 500 fd's: 89.3871 microseconds
Select on 1000 fd's: 176.3226 microseconds
Select on 10 tcp fd's: 5.9902 microseconds
Select on 100 tcp fd's: 33.7963 microseconds
Select on 250 tcp fd's: 86.6719 microseconds
Select on 500 tcp fd's: 155.5588 microseconds
Select on 1000 tcp fd's: 308.0556 microseconds
# latency context switching with 000 process
1.65
1.86
1.75
# latency context switching with 010 process
2.69
3.02
3.02
# latency context switching with 020 process
3.45
3.97
3.87
# latency context switching with 030 process
4.43
4.45
3.98
# latency context switching with 040 process
6.98
5.84
6.10
# latency context switching with 050 process
9.67
9.06
8.71
[-- Attachment #3: result-ctxt-2.5.2-pre9-O1_C1 --]
[-- Type: application/octet-stream, Size: 1516 bytes --]
2.5.2-pre9-O1_C1
# latency process
Process fork+exit: 368.1333 microseconds
Process fork+exit: 371.0667 microseconds
Process fork+exit: 368.2667 microseconds
Process fork+exit: 369.4000 microseconds
Process fork+exit: 368.2667 microseconds
Process fork+execve: 2002.3333 microseconds
Process fork+execve: 2016.3333 microseconds
Process fork+execve: 2024.0000 microseconds
Process fork+execve: 2043.6667 microseconds
Process fork+execve: 2014.0000 microseconds
Process fork+/bin/sh -c: 7810.0000 microseconds
Process fork+/bin/sh -c: 7857.0000 microseconds
Process fork+/bin/sh -c: 7734.0000 microseconds
Process fork+/bin/sh -c: 7725.0000 microseconds
Process fork+/bin/sh -c: 7714.0000 microseconds
# latency select
Select on 10 fd's: 4.6092 microseconds
Select on 100 fd's: 20.1741 microseconds
Select on 250 fd's: 46.2185 microseconds
Select on 500 fd's: 89.3871 microseconds
Select on 1000 fd's: 176.4194 microseconds
Select on 10 tcp fd's: 5.9978 microseconds
Select on 100 tcp fd's: 33.4939 microseconds
Select on 250 tcp fd's: 79.1143 microseconds
Select on 500 tcp fd's: 155.3529 microseconds
Select on 1000 tcp fd's: 307.9444 microseconds
# latency context switching with 000 process
1.84
1.83
1.84
# latency context switching with 010 process
1.61
1.59
1.60
# latency context switching with 020 process
1.64
1.60
1.55
# latency context switching with 030 process
1.58
1.58
1.60
# latency context switching with 040 process
1.55
1.58
1.56
# latency context switching with 050 process
1.69
1.62
1.63
[-- Attachment #4: bench --]
[-- Type: application/octet-stream, Size: 870 bytes --]
#!/bin/sh
DIR=/tmp/LMbench/bin/i686-pc-linux-gnu
function launch () {
for i in $(seq 1 $1)
do
# spill is just a stupid process that eat CPU time
./spill &
done
}
function do_bench_ctx () {
n=0
max=50
while [ $n -le $max ]
do
echo
echo "# latency context switching with $(printf %03d $n) process"
for i in $(seq 0 2)
do
$DIR/lat_ctx -s 0 2 2>&1 | grep '^2' | cut -f 2 -d' '
done
if [ $n -lt $max ]; then
launch 10
fi
n=$((n+10))
done
killall spill
}
function do_bench() {
uname -r
echo "# latency process"
for j in fork exec shell
do
for i in $(seq 0 4)
do
$DIR/lat_proc $j
done
done
echo
echo "# latency select"
for i in 10 100 250 500 1000; do $DIR/lat_select file $i; done
echo
for i in 10 100 250 500 1000; do $DIR/lat_select tcp $i; done
do_bench_ctx
}
do_bench 2>&1 | tee result-ctxt-$(uname -r)
echo Done
prev parent reply other threads:[~2002-01-06 22:18 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-01-06 18:10 [patch] O(1) scheduler, 2.5.2-pre9-C1 Ingo Molnar
2002-01-06 22:15 ` Luc Van Oostenryck [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=3C38CC76.1DED77DD@easynet.be \
--to=luc.vanoostenryck@easynet.be \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
/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