Re: Problem with e100 driver and latency on different packet sizes

Corey Minyard (cminyard@mvista.com)
Thu, 15 May 2003 15:57:00 -0500


Thanks for the response.

I looked at the code, and there doesn't seem to be a way to turn it off
dynamically or with a bootline option. I have to have the driver
compiled into the kernel (because I'm netbooting with NFS) so I can't
really use a module parameter.

A dynamic field in /proc would be quite nice.

-Corey

Feldman, Scott wrote:

>>I've attached a small program to measure latency of
>>round-trip time on UDP. If I send 85-byte packets between
>>two of my machines, I get 170us round-trip latency. If I
>>send 86-byte packets, I get 1329us latency.
>>This seems quite odd. If I test on the eepro100 driver, I
>>get expected linear increase in round-trip time as the packet
>>size increases, and it never gets close to 1300us.
>>
>>
>
>This sounds like a side-effect of the "CPU Cycle Saver" feature to
>bundle Rx packets per one interrupt. See
>Documentation/networking/e100.txt. I haven't tried your setup, but I
>would guess that you can play around with the BundleSmallFr module
>parameter, or better yet, if you want the lowest latencies, turn off CPU
>Saver (ucode=0).
>
>CPU Saver trades latency for reduced interrupts, resulting in CPU
>savings, hence the name.
>
>Hope this helps.
>
>-scott
>
>
>
>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/