Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 27 Mar 2004 14:22:11 -0600
From:      Alan Cox <alc@cs.rice.edu>
To:        Alan Cox <alc@FreeBSD.org>
Cc:        cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/sys/kern subr_param.c sys_pipe.c src/sys/sys pipe.h
Message-ID:  <20040327202211.GT19961@cs.rice.edu>
In-Reply-To: <200403271950.i2RJoN9P033780@repoman.freebsd.org>
References:  <200403271950.i2RJoN9P033780@repoman.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Mar 27, 2004 at 11:50:23AM -0800, Alan Cox wrote:
> alc         2004/03/27 11:50:23 PST
> 
>   FreeBSD src repository
> 
>   Modified files:
>     sys/kern             subr_param.c sys_pipe.c 
>     sys/sys              pipe.h 
>   Log:
>   Revise the direct or optimized case to use uiomove_fromphys() by the reader
>   instead of ephemeral mappings using pmap_qenter() by the writer.  The
>   writer is still, however, responsible for wiring the pages, just not
>   mapping them.  Consequently, the allocation of KVA for the direct case is
>   unnecessary.  Remove it and the sysctls limiting it, i.e.,
>   kern.ipc.maxpipekvawired and kern.ipc.amountpipekvawired.  The number
>   of temporarily wired pages is still, however, limited by
>   kern.ipc.maxpipekva.
>   
>   Note: On platforms lacking a direct virtual-to-physical mapping,
>   uiomove_fromphys() uses sf_bufs to cache ephemeral mappings.  Thus,
>   the number of available sf_bufs can influence the performance of pipes
>   on platforms such i386.  Surprisingly, I saw the greatest gain from this
>   change on such a machine: lmbench's pipe bandwidth result increased from
>   ~1050MB/s to ~1850MB/s on my 2.4GHz, 400MHz FSB P4 Xeon.
>   
>   Revision  Changes    Path
>   1.62      +1 -6      src/sys/kern/subr_param.c
>   1.171     +18 -60    src/sys/kern/sys_pipe.c
>   1.27      +0 -2      src/sys/sys/pipe.h

I would appreciate receiving before and after lmbench bw_pipe results
from others.  Obviously, I have P4 results.  I also have amd64 results.

Thanks,
Alan



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040327202211.GT19961>