[kern/sys_pipe.c] PIPE_NODIRECT and pipe throughput
dmantipov at yandex.ru
Sat Mar 8 07:19:21 UTC 2008
[originally posted to freebsd-stable@]
recently I've tried a few benchmarks around pipe throughput on Linux vs. FreeBSD.
Everyone interesting can see my stuff at http://126.96.36.199/PipeBench, and
initial post to Linux kernel developers mailing list at
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 ?
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 ?
More information about the freebsd-hackers