On Wed, 2005-07-12 at 15:06 -0800, Jesse Brandeburg wrote: > On Wed, 7 Dec 2005, David S. Miller wrote: [..] > Okay, so I tested with just pktgen sending to a machine with a PCI Express > Intel 82571 server adapter. The stack is just discarding the data, no > routing. >
Where are you discarding at? tc rules or firewall? The results would be affected. > There are 5 prefetches in the e1000_clean_rx_irq_ps function > #1 skb->data > #2 next rx descriptor The above are probably the most useful. I am not sure if they are also the ones Robert picked. > #3 next rx buffer_info > #4 next skb > #5 next skb->data > all these are speculative; i.e you may prefetch but never use it. > There are _no_ copybreaks in this code > But would be nonetheless to see it with copybreak turned on. > here are my results: > sender sending at ~700000 pkt/s > dual Xeon, 2.8GHz, 1MB cache, 2.6.14 > Are the IRQs being balanced? > all tests with 6.2.15 > no prefetch: 517500 > #1: 539000 > #1#2: 547500 > #1#2#5: 565500 > #1#2#3#5: 565100 > #1#2#3: 545500 > #1#2#3#4: 544200 > > prefetching the next rx descriptor really helps us. (#2) > prefetching the next skb->data also really helps. > > in no case did the prefetch hurt anything on this box. > I'd prefer leaving #1#2#5 for now. > send the changes and i will test tommorow. cheers, jamal - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html