DragonFly kernel List (threaded) for 2009-07
DragonFly BSD
DragonFly kernel List (threaded) for 2009-07
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: Testing needed for new pipe code (in master)


From: YONETANI Tomokazu <qhwt+dfly@xxxxxxxxxx>
Date: Tue, 28 Jul 2009 14:15:28 +0900

On Sun, Jul 12, 2009 at 10:45:09PM -0700, Matthew Dillon wrote:
>     I have substantially rewritten kern/sys_pipe.c, which is our support
>     for pipes.  It should work quite well on a SMP box now.  Performance
>     on UP boxes might be a bit lower then the old code but the difference
>     should not be noticable for any production workload.
> 
>     To test the SMP improvements set sysctl kern.pipe.mpsafe=1.
> 
>     The latest code significantly improves synchronous communication over
>     a pipe (not a socket, sorry), reducing (Awrite,Bread,Bwrite,Aread)
>     sequences from 7uS to 2uS on my test box.  The pipe1 test (from
>     /usr/src/test/sysperf) tests this.
> 
>     The latest code is now able to fully saturated all available cpus
>     when running multiple copies of the pipe2 test (from
>     /usr/src/test/sysperf).

Recently I occasionally see processes stuck on `piperd' state, probably
after it's been turned on by default.  The stuck processes can be
interrupted and re-issued, though.  It happened on both vkernel and
the real kernel.  The first time I saw it was when `make upgrade' was
performing `./MAKEDEV upgrade', so I thought it was temporary back then.



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]