On 6/2/05, Sean Knox <[EMAIL PROTECTED]> wrote: > Hey Bill- > > Is IRQ sharing done in BIOS? I'm using 2 onboard em(4) NICs and a dual > port em(4) on a Supermicro 6023P-8:
This was all done in BIOS on HP DL380's. > em0 at pci3 dev 2 function 0 "Intel PRO/1000MT DP (82546EB)" rev 0x01: > irq 12, address: 00:30:48:2c:96:c6 > em1 at pci3 dev 2 function 1 "Intel PRO/1000MT DP (82546EB)" rev 0x01: > irq 12, address: 00:30:48:2c:96:c7 > em2 at pci5 dev 1 function 0 "Intel PRO/1000MT DP (82546EB)" rev 0x03: > irq 11, address: 00:04:23:a7:b5:08 > em3 at pci5 dev 1 function 1 "Intel PRO/1000MT DP (82546EB)" rev 0x03: > irq 11, address: 00:04:23:a7:b5:09 > > We're pushing over 100Mb/s with a decent sized pf.conf, seeing 90% > interrupts during peak times. systat shows the interrupts split evenly > between an onboard port and one on the PCI card. I pushed a 2.8Ghz Xeon with dual em(4) cards in it to 900+Mbit w/ a "decent" rule set (pf wasn't the challenge) and sat at around 30% interrupt load with all NICs on the same interrupt. This was with 1500byte packets (I was after throughput, not pps), so YMMV. > Here's our packet rate: > 5 minute input rate 23209000 bits/sec, 15237 packets/sec; 5 minute > output rate 111684000 bits/sec, 16930 packets/sec > > In addition to IRQ sharing, other things I wanted to explore: > > * pf rules optimization > * further separating networks with additional NICs > * tuning the em(4) driver There are things you can touch in the tunables section of the if_em header file. While they can help squeak a little more performance out of the driver, getting the cards on the same interrupt will give you the most gain (unless the interrupt handler has changed dramatically since 3.5). > * ensure PCI card is in 133mhz slot (pretty sure it is) This never hurts :) > * 64-bit architectures (amd64 in particular) No comment, all my machines are running i386. I'm wondering if I've got a crappy APM bios so I can get even more speed outa my gear :) > > any ideas ? > > cheers, > sk