On Sat, 8 Mar 2008, Antipov Dmitry wrote:
[originally posted to [EMAIL PROTECTED]
Hello all,
recently I've tried a few benchmarks around pipe throughput on Linux vs.
FreeBSD.
Everyone interesting can see my stuff at http://213.148.29.37/PipeBench, and
initial post to Linux kernel developers mailing list at
http://www.uwsg.iu.edu/hypermail/linux/kernel/0803.0/1837.html
1) It was noticed
(http://www.uwsg.iu.edu/hypermail/linux/kernel/0803.0/1842.html) that
the page flipping may be a reason of FreeBSD advantage. I've looked at
kern/sys_pipe.c
and found that defining PIPE_NODIRECT should disable it. Is that correct ?
Yes, that is correct.
2) When I've tried to run the kernel (7.0-STABLE) with PIPE_NODIRECT defined,
I didn't see any slowdown (note 30% is promised in kern/sys_pipe.c comments)
even for I/O buffer sizes >= PIPE_MINDIRECT. So, what should be done with a pipe
to see a difference between PIPE_NODIRECT enabled and disabled ?
Thanks,
Dmitry
Why don't you add another sysctl that is incremented every time page
flipping is used? That would prove how much it is being used during your
tests. Just add:
static int page_flips;
SYSCTL_INT(_kern_ipc, OID_AUTO, page_flips, CTLFLAG_RD,
&page_flips, 0, "Pipe page flips");
and then put page_flips++ at the appropriate points in the code.
You should really use gnuplot or some other tool to graph your results.
That will make them much easier to understand.
-Mike
_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"