Re: [PATCH] Mantaining turnstile aligned to 128 bytes in i386 CPUs
- From: Nick Evans <nevans@xxxxxxxxxxxxx>
- Date: Tue, 16 Jan 2007 16:24:03 -0500
On Tue, 16 Jan 2007 16:07:43 -0500
John Baldwin <jhb@xxxxxxxxxxx> wrote:
On Tuesday 16 January 2007 15:42, Nick Evans wrote:
On Tue, 16 Jan 2007 17:51:03 +0100
"Attilio Rao" <attilio@xxxxxxxxxxx> wrote:
2006/7/28, Attilio Rao <attilio@xxxxxxxxxxx>:
After some thinking, I think it's better using init/fini methods
(since they hide the sizeof(struct turnstile) with size parameter).
Feedbacks and comments are welcome:
http://users.gufi.org/~rookie/works/patches/uma_sync_init.diff
[CC'ed all the interested people]
Even if a long time is passed I did some benchmarks based on ebizzy
tool. This program claims to reproduce a real httpd server behaviour
and is used into the Linux world for benchmarks, AFAIK.
I think that results of the comparison on this patch is very
interesting, and I think it worths a commit :)
I think that results can be even better on a Xeon machine (I had no
chance to reproduce this on some of these).
(Results taken in consideration have been measured after some starts,
in order to minimize caching differences).
The patch:
http://users.gufi.org/~rookie/works/patches/ts-sq/ts-sq.diff
The benchmark results:
http://users.gufi.org/~rookie/works/patches/ts-sq/ts-sq.benchmark
The kernel options file:
http://users.gufi.org/~rookie/works/patches/ts-sq/CURRENT
For any information, comment, etc. please feel free to contact me.
Attilio
--
Peace can only be achieved by understanding - A. Einstein
_______________________________________________
freebsd-current@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to
"freebsd-current-unsubscribe@xxxxxxxxxxx"
Some preliminary results:
PREEMPTION: 4BSD, Quad P3-Xeon, 2GB ram
pre-patch
1. 176.36 real 703.75 user 0.01 sys
2. 176.73 real 704.34 user 0.03 sys
3. 176.49 real 703.72 user 0.04 sys
4. 175.81 real 701.36 user 0.03 sys
5. 176.57 real 700.98 user 0.02 sys
post-patch
1. 179.17 real 714.39 user 0.01 sys
2. 178.33 real 711.50 user 0.04 sys
3. 178.32 real 711.04 user 0.03 sys
4. 177.34 real 707.51 user 0.03 sys
5. 178.25 real 710.17 user 0.03 sys
What did you use to do your benchmark? Also, have you tried adjusting
UMA_ALIGN_SYNC (maybe use 64 - 1)?
--
John Baldwin
Tested with ebizzy, default runtime options, no WITNESS or INVARIANTS. I
haven't tried variations on UMA_ALIGN_SYNC, that's next on the list. I also
have a single core P4-Xeon and dual core Presler 915 that I'm going to test
this with as soon as they're done building world with the latest -CURRENT.
When ULE 2.0 shakes out a bit more I plan on testing with that too. I'll post
results on my other hardware sometime tonight.
Nick
_______________________________________________
freebsd-arch@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-arch
To unsubscribe, send any mail to "freebsd-arch-unsubscribe@xxxxxxxxxxx"
- References:
- Re: [PATCH] Mantaining turnstile aligned to 128 bytes in i386 CPUs
- From: Attilio Rao
- Re: [PATCH] Mantaining turnstile aligned to 128 bytes in i386 CPUs
- From: Nick Evans
- Re: [PATCH] Mantaining turnstile aligned to 128 bytes in i386 CPUs
- From: John Baldwin
- Re: [PATCH] Mantaining turnstile aligned to 128 bytes in i386 CPUs
- Prev by Date: Re: [PATCH] Mantaining turnstile aligned to 128 bytes in i386 CPUs
- Next by Date: Re: [PATCH] Mantaining turnstile aligned to 128 bytes in i386 CPUs
- Previous by thread: Re: [PATCH] Mantaining turnstile aligned to 128 bytes in i386 CPUs
- Next by thread: Re: [PATCH] Mantaining turnstile aligned to 128 bytes in i386 CPUs
- Index(es):