OT: PC Gigabit Throughput Question
Dave Johnson
dave-gnhlug at davej.org
Sat Jun 16 11:44:25 EDT 2007
Most have already covered the PCI 33/32 bandwidth limits (avoid PCI
33/32 if you can). Integrated into the chipset, PCIX bus (faster but
still shared), or PCIe (dedicated) will solve the bandwidth problems.
Just about any PCIX/PCIe/Integrated MAC will give you 100% gigabit
full duplex line rate provided the driver and memory controller can
keep up.
Look for a useful TOE/TSO/GSO hardware engine as well as hardware
TCP/UDP checksumming on both RX and TX.
Hardware checksumming will reduce the cpu power requirements
dramatically, a segment engine will reduce the number of packets and
give you the equivelant of jumbo frames (from the driver's point of
view) without actually using jumbo frames on the network .
Which brings me to the next point. A bad driver will make a huge
difference and may be a limiting factor especially at >500mbps.
A good driver will make use of NAPI for overload conditions, and
interrupt coalescing for moderate load conditions.
A segment engine isn't likely on a PCI33/32 MAC, but some do have
checksumming.
One other neat feature I've seen on nvidia integrated MACs is it makes
use of MSI-X to offer 3 different interrupts for each MAC. One for TX
service, one for RX service, and the 3rd for phy events. This allows
the driver to have completely separate RX/TX/misc code paths.
Very cool.
Anyway, I'd recommend Intel (e1000) or Broadcom (tg3, bnx2) MACs.
--
Dave
More information about the gnhlug-discuss
mailing list