Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
BW_PIPE(8)			    LMBENCH			    BW_PIPE(8)

NAME
       bw_pipe - time data movement through pipes

SYNOPSIS
       bw_pipe [ -m <message size> ] [ -M <total bytes>	] [ -P <parallelism> ]
       [ -W <warmups> ]	[ -N <repetitions> ]

DESCRIPTION
       bw_pipe creates a Unix pipe between two processes and moves total bytes
       through	the pipe in message size chunks	(note that pipes are typically
       sized smaller than that).  The default total bytes is 10MB and the  de-
       fault message size is 64KB.

OUTPUT
       Output  format  is "Pipe	bandwidth: %0.2f MB/sec\n", megabytes_per_sec-
       ond, i.e.,

       Pipe bandwidth: 4.87 MB/sec

MEMORY UTILIZATION
       This benchmark can move up  to  six  times  the	requested  memory  per
       process.	  There	 are two processes, the	sender and the receiver.  Most
       Unix systems implement the read/write system calls as a	bcopy  from/to
       kernel space to/from user space.	 Bcopy will use	2-3 times as much mem-
       ory  bandwidth:	there  is  one read from the source and	a write	to the
       destionation.  The write	usually	results	in a cache line	read and  then
       a write back of the cache line at some later point.  Memory utilization
       might be	reduced	by 1/3 if the processor	architecture implemented "load
       cache line" and "store cache line" instructions (as well	as getcacheli-
       nesize).

ACKNOWLEDGEMENT
       Funding	for the	development of this tool was provided by Sun Microsys-
       tems Computer Corporation.

SEE ALSO
       lmbench(8).

AUTHOR
       Carl Staelin and	Larry McVoy

       Comments, suggestions, and bug reports are always welcome.

(c)1994	Larry McVoy		    $Date$			    BW_PIPE(8)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=bw_pipe&sektion=8&manpath=FreeBSD+Ports+15.0>

home | help