I have released a new zero copy sockets snapshot; the patches are against
yesterday's (May 3rd) -current.

The astute reader may note that it has been quite a while (November 2000)
since my last zero copy code release, and all I can say is "time,
motivation, lack of local equipment".

Anyway, the code and a FAQ (I've updated it a bit, but not thoroughly) is
available here:


Comments, questions, reviews are all welcome.

A sample benchmark:

{gondolin:/usr/local/netperf:15:0} ./netperf -H nargothrond-ge
TCP STREAM TEST to nargothrond-ge : histogram
Recv   Send    Send                          
Socket Socket  Message  Elapsed              
Size   Size    Size     Time     Throughput  
bytes  bytes   bytes    secs.    10^6bits/sec  

262144 262144 262144    10.01     989.06   

That, in and of itself, is unremarkable.  I can get that sort of speed
going between two machines running -stable.  (In fact the sender is running
-stable, the receiver is running -current.)

The remarkable thing here is the CPU utilization on the receiver -- only
about 35% on average during the 10 second run.

If I turn off zero copy receive, CPU utilization on the receiver goes up to
around 60% or so.

The difference is a bit larger on the send side.

Before you ask "can I do this on my system??", please see item 4 of the

Kenneth Merry

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to