Re: Network performance degradation from 2.6.11.12 to 2.6.16.20
From: Andi Kleen <hidden>
Date: 2006-07-04 11:54:30
Also in:
lkml
On Tuesday 04 July 2006 13:41, Jesper Dangaard Brouer wrote:
On Mon, 26 Jun 2006, Andi Kleen wrote:quoted
quoted
I encountered the same problem on a dual core opteron equipped with a broadcom NIC (tg3) under 2.4. It could receive 1 Mpps when using TSC as the clock source, but the time jumped back and forth, so I changed it to 'notsc', then the performance dropped dramatically to around the same value as above with one CPU saturated. I suspect that the clock precision is needed by the tg3 driver to correctly decide to switch to polling mode, but unfortunately, the performance drop rendered the solution so much unusable that I finally decided to use it only in uniprocessor with TSC enabled.2.6 is more clever at this than 2.4. In particular it does the timestamp for each packet only when actually needed, which is relativelt rare. Old experiences do not always apply to new kernels.Note, that I experinced this problem on 2.6. Actually the change happens between kernel version 2.6.15 and 2.6.16.
The timestamp optimizations are older. Don't remember the exact release, but earlier 2.6.
And is a result of Andi's changes to arch/x86_64/Kconfig and drivers/acpi/Kconfig, which "allows/activates" the use of the timer on x86_64.
Not sure what you mean here? 2.6.18 will likely be more aggressive at using the TSC on i386 on Intel systems where possible, but x86-64 did this already for a long time. When x86-64 uses non TSC then it's because using the TSC is not safe. -Andi