Andrew Gallatin wrote:
> 
> Ah, very clever idea.  From measurements on other platforms,
> allocating rx buffers is one of the most expensive things that
> happens in the receive path, aside from touching recently
> DMA'ed, unprefetched memory.  I imagine this helps a lot.
> 
> Do you have any performance data to quantify the benefit?
> 

Drew,

   I don't have anything to hand; the code was actually written rather a 
long time ago. I don't imagine I saw any throughput benefit from that 
change as I was doing most of my testing at that time on a machine with 
ample CPU to cope with the overhead.
   What led me to the desire for this function was my observations from 
lockstat profiling runs where I noticed that my previous scheme of 
desballoc()ing my blocks was causing much contention on the kmem cache 
they were being pulled from and this was because the freeb() was hitting 
the cache on one CPU while another thread was desballoc()ing prior to 
passing packets up.

   Paul
_______________________________________________
driver-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/driver-discuss

Reply via email to