Intel GigE and copper PHY supported?

joe mcguckin joe at via.net
Tue May 6 11:42:48 PDT 2003


We expect to push only 30 or 40 Mbits through it, so performance probably
won't be an issue. We're using a GigE interface because that's the only port
available on the ethernet switch we have to connect to.

joe


On 5/6/03 11:26 AM, "Jin Guojun [NCS]" <j_guojun at lbl.gov> wrote:

> "Simon L. Nielsen" wrote:
> 
>> On 2003.05.06 10:07:03 -0700, Jin Guojun [NCS] wrote:
>>> joe mcguckin wrote:
>>> 
>>>> I'd like to use the TYAN Trinity GC-SL motherboard with on-board GigE
>>>> (copper). Does anyone know if this is supported? Has anyone used this board
>>>> with 4.X?
>>>> 
>>>> Thanks,
>>> 
>>> Do not have direct use of this motherboard. We have some similar M/Bs
>>> from SuperMicro (same chipset and same GigE NICs).
>>> 
>>> General M/B performance is good. The GigE is not too pleasure.
>>> The Incoming TCP is about 350 Mb/s, and out going TCP is only 270,
>>> which is limited by interrupt (98% CPU -- 2.8 GHz -- used for interrupt).
>>> Either the driver or the Intel NIC is not functioning properly, but we do
>>> not
>>> have time to investigate.
>> 
>> If this the chips a using the em(4) driver you can try turning on
>> interrupt coalation (or whatever Intel calls it). It can (AFAIR) only be
>> done by modifying sys/dev/em/if_em.h. Just note the warning about why it
>> was disabled.
>> 
>> --
>> Simon L. Nielsen
> 
> The Tx interrupt coalescing in if_em.h in 4.8-RELEASE is enabled to 64 * 1.024
> us:
> /*
> * TxIntDelay
> * Valid Range: 0-65535 (0=off)
> * Default Value: 64
> *   This value delays the generation of transmit interrupts in units of
> *   1.024 microseconds. Transmit interrupt reduction can improve CPU
> *   efficiency if properly tuned for specific network traffic. If the
> *   system is reporting dropped transmits, this value may be set too high
> *   causing the driver to run out of available transmit descriptors.
> */
> #define EM_TIDV                         64
> 
> If this is really set, then the chip is not designed correctly. In my design
> experience,
> the Tx interrupt can only be generated after Tx queue is empty.
> The Tx  interrupt is generated immediately if TIDV = 0,
> or wait for TIDV * 1.024 us.
> 
> If the driver can feed the device enough data (also recycling the used
> buffers),
> Tx interrupt should never happen. This is different from Rx interrupt.
> 
> Two things can happen here, either the kernel does not provide enough data
> to the NIC, or the NIC generates interrupts anyway after TIDV regardless
> if the data queue is not empty. If it is the later case, I would blame Intel.
> We also have the  profermance issue on their 10Gb/s NIC, and we are still
> investigating what is the problem.
> 
>   -Jin
> 



More information about the freebsd-hardware mailing list