Re: gigabit Ethernet with slow PowerPC VME processor

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> I recall from the profiling that PPC interrupt handling showed up
> clearly as the biggest time consumer.  If the interrupt controller
> is even slightly different between your test machines, that would
> explain a lot.
> 
> I wish some PPC expert would comment on why the PPC interrupt code
> consumes so much time.

So, with help from Gabriel Paubert, we found the bottleneck!

On the MVME2600, the PCI bus latency timer was set to 0.  In principle, this
register is set by the firmware, and Linux doesn't touch it.  On the x86, 
pcibios_set_master() would have fixed this up; there is a comment

 *  If we set up a device for bus mastering, we need to check the latency
 *  timer as certain crappy BIOSes forget to set it properly.

The PowerPC doesn't do this, and perhaps there is a reason that Motorola
calls their firmware package "PPCBug."  :-)  I have the impression that a 
latency setting of 0 effectively prohibits burst-mode transfers on the PCI bus.

For latency = 128:
MTU [bytes]       Non-zero-copy [10^6 bytes/s]      Zero-copy [10^6 bytes/s]
1500              15.78                             30.27
9000              18.74                             36.19
16000             18.82                             37.18

For latency = 255:
MTU [bytes]       Non-zero-copy [10^6 bytes/s]      Zero-copy [10^6 bytes/s]
1500              16.21                             40.79
9000              19.85                             44.03
16000             20.00                             44.23

This 40 MB/s is about the level of performance that I had expected from my 
"bicycle," and it should be sufficient for our application.

Thanks again,

-- Fred

-- Fred Gray / Visiting Postdoctoral Researcher                         --
-- Department of Physics / University of California, Berkeley           --
-- fegray@socrates.berkeley.edu / phone 510-642-4057 / fax 510-642-9811 --
-
: send the line "unsubscribe linux-net" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux