jamal writes:
 > > >  copybreaks help you..
 > > 
 > > Thanks for running these tests, so far it mostly validates that for
 > > the general case the copybreak and prefetch benefits things.
 > 
 > I dont know what you would call a general case. Pick two modern boards
 > as in these tests:
 
 I'll add some more fuel here... :)

 You were right about the flow control it's seems it was not disabled
 with my first experiment it means lot of variation so I decided to rerun
 some of the copybreak tests. Still like the results to verified...

 Anyway to the todays two copybreak tests...
 All e1000 6.2.15 64 byte pkts. Dual Opteron 1.6 GHz

 First. Single flow of pkts eth0->eth1 all same dst one CPU
 ----------------------------------------------------------
 With    cpybrk 666 kpps  (We see a drop at qdisc)
 With no cpybrk 657 kpps


 Second.32k concurrent flows @ 10 pkts per flw. 123k routes using both CPU's
 ---------------------------------------------------------------------------
 With    cpybrk 691 kpps
 With no cpybrk 802 kpps

For a very simple forwarding case we see a small win but for heavy 
network server with hash and FIB lookups and garbage collection etc
it seems copybreak should be disabled. A bit surprising.

Thanks for this discussion. It comes in handy as I have to prepare 
for a new distro for our network stuff. Right now it seems like 
e1000 6.2.15 can be used but with HW-flow disabled, cpybrk disabled
and only with the two first prefetches.  Hmm there were some patches 
for using local memory on NUMA systems. What the status here? Tests?


Cheers.
                                        --ro


First experiment
----------------
Single flow of pkts e1000 6.2.15
No   cpybrk 657 kpps
With cpybrk 666 kpps  (We see a drop at qdisc)


No cpybrk input 1299 kpps

Kernel Interface table
Iface   MTU Met  RX-OK RX-ERR RX-DRP RX-OVR  TX-OK TX-ERR TX-DRP TX-OVR Flags
eth0   1500   0 5067035      0 4932965      0      5      0      0      0 BRU
eth1   1500   0      1      0      0      0 5065350      0      0      0 BRU
eth2   1500   0      0      0      0      0      3      0      0      0 BRU
eth3   1500   0      0      0      0      0      3      0      0      0 BRU


With cpybrk input 1299 kpps

Kernel Interface table
Iface   MTU Met  RX-OK RX-ERR RX-DRP RX-OVR  TX-OK TX-ERR TX-DRP TX-OVR Flags
eth0   1500   0 5258735      0 4741265      0      5      0      0      0 BRU
eth1   1500   0      1      0      0      0 5131971      0      0      0 BRU
eth2   1500   0      0      0      0      0      3      0      0      0 BRU
eth3   1500   0      0      0      0      0      3      0      0      0 BRU

00503df0 00000000 00004479 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

 qdisc pfifo 1: dev eth1 limit 1000p
 Sent 307918062 bytes 5131968 pkts (dropped 125143, overlimits 0) 



Second experiment
-----------------

With    cpybrk 691 kpps
With no cpybrk 802 kpps

Input 655+640 kpps 32 flows @ 10 pkts per flw 64 byte pkts
With copybrk and all 5 prefetches

Kernel Interface table
Iface   MTU Met  RX-OK RX-ERR RX-DRP RX-OVR  TX-OK TX-ERR TX-DRP TX-OVR Flags
eth0   1500   0 5127067      0 4872933      0      5      0      0      0 BRU
eth1   1500   0      1      0      0      0 5126710      0      0      0 BRU
eth2   1500   0 5570756      0 4429244      0      5      0      0      0 BRU
eth3   1500   0      1      0      0      0 5570399      0      0      0 BRU

004e3b9c 00000000 000042c8 00000000 00000000 00000000 00000000 00000000 00000000
005500c5 00000000 0000488f 00000000 00000000 00000000 00000000 00000000 00000000

Input 663+650 kpps 32 flows @ 10 pkts per flw 64 byte pkts
Without copybrk and all 5 prefetches

Kernel Interface table
Iface   MTU Met  RX-OK RX-ERR RX-DRP RX-OVR  TX-OK TX-ERR TX-DRP TX-OVR Flags
eth0   1500   0 5782756      0 4217244      0      5      0      0      0 BRU
eth1   1500   0      1      0      0      0 5782271      0      0      0 BRU
eth2   1500   0 6453043      0 3546957      0      3      0      0      0 BRU
eth3   1500   0      1      0      0      0 6452686      0      0      0 BRU

00583ce5 00000000 00004b50 00000000 00000000 00000000 00000000 00000000 00000000
00627734 00000000 0000540d 00000000 00000000 00000000 00000000 00000000 00000000



-
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

Reply via email to