Subject: Re: But why?
To: None <torek@BSDI.COM>
From: Miguel de Icaza <miguel@nuclecu.unam.mx>
List: tech-kern
Date: 10/23/1996 21:09:36
> >Alan Cox just devised a way for Linux/SPARC to avoid packet copying on
> >our networking stack ...
> 
> This is not a micro-optimization.  (Neither, for that matter, is
> the `system calls via normal subroutine calls' trick, although this
> is probably not the place to *start* optimizing.)  In particular,
> for applications that spend all their time sending bulk network
> data, eliminating these copies eliminates the place they spend most
> of their time -- a network send is, or should be, dominated by the
> time spent copying those bytes.

I was talking about how the job is split among a team of people.  This
is just an example that the Linux programmers are not just doing
microoptimizations.  

Anyways, Alan Cox is one of my heros: with this optimization of his
for Linux/SPARC, we can deliver an udp datagram to user space with
just one memcpy (we allocate skbuffs on the dma area that the lance
card has access to, and flip skbufs around.  Move the skbuff up and
down as much as we want in the networking stack and just do one memcpy
to userland at the final delivery time).

So nice.

Miguel.