netdev
[Top] [All Lists]

Re: RFC: NAPI packet weighting patch

To: hadi@xxxxxxxxxx
Subject: Re: RFC: NAPI packet weighting patch
From: P@xxxxxxxxxxxxxx
Date: Thu, 23 Jun 2005 09:56:30 +0100
Cc: "David S. Miller" <davem@xxxxxxxxxxxxx>, gandalf@xxxxxxxxxxxxxx, shemminger@xxxxxxxx, mitch.a.williams@xxxxxxxxx, john.ronciak@xxxxxxxxx, mchan@xxxxxxxxxxxx, buytenh@xxxxxxxxxxxxxx, jdmason@xxxxxxxxxx, netdev@xxxxxxxxxxx, Robert.Olsson@xxxxxxxxxxx, ganesh.venkatesan@xxxxxxxxx, jesse.brandeburg@xxxxxxxxx
In-reply-to: <1119469066.6918.168.camel@xxxxxxxxxxxxxxxxxxxxx>
References: <42A5284C.3060808@xxxxxxxx> <1118147904.6320.108.camel@xxxxxxxxxxxxxxxxxxxxx> <Pine.LNX.4.58.0506071351080.16594@xxxxxxxxxxxxxx> <20050621.133704.08321534.davem@xxxxxxxxxxxxx> <42B92490.40005@xxxxxxxxxxxxxx> <1119469066.6918.168.camel@xxxxxxxxxxxxxxxxxxxxx>
Sender: netdev-bounce@xxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040124
jamal wrote:
On Wed, 2005-22-06 at 09:42 +0100, P@xxxxxxxxxxxxxx wrote:


Yes the copy is essentially free here as the data is already cached.

As a data point, I went the whole hog and used buffer recycling
in my essentially packet sniffing application. I.E. there are no
allocs per packet at all, and this make a HUGE difference. On a
2x3.4GHz 2xe1000 system I can receive 620Kpps per port sustained
into my userspace app which does a LOT of processing per packet.
Without the buffer recycling is was around 250Kpps.
Note I don't reuse an skb until the packet is copied into a
PACKET_MMAP buffer.


Was this machine SMP?

Yes. 2 x 3.4GHz P4s
1 logical CPU per port (irq affinity)
1 thread (NB on same logical CPU as irq (sched_affinity))
to do user space per packet processing.

NAPI involved?

Yep.

I take it nothing interfering in
the middle with the headers?

It uses the standard path to PACKET_MMAP buffer
e1000_clean_rx_irq -> netif_receive_skb -> tpacket_rcv

Pádraig.

<Prev in Thread] Current Thread [Next in Thread>