Messages in this thread | | | Subject | Re: big picture UDP/IP performance question re 2.6.18 -> 2.6.32 | From | Eric Dumazet <> | Date | Wed, 05 Oct 2011 10:53:52 +0200 |
| |
Le mercredi 05 octobre 2011 à 02:58 -0400, starlight@binnacle.cx a écrit : > Final note: > > I had captured latency measurements for > two of the three kernels. Just ran > 2.6.18(rhel5) and the results are > stunning. The older kernel is much, > much better then the newer kernel. > > Average latency is three times better > and the standard deviation is six > time better. As in 300% and 600%. > > Latency here is the time it takes > a packet to travel from the kernel > (where it is timestamped) till it > reaches the final consumption point > in the application. > > Makes me think that the old kernel > is better at keeping caches hot and > scheduling woken threads on the same > cores as the threads that triggered > them. >
Note :
Your results are from a combination of a user application and kernel default strategies.
On other combinations, results can be completely different.
A wakeup strategy is somewhat tricky :
- Should we affine or not. - Should we queue the wakeup on a remote CPU, to keep scheduler data hot in a single cpu cache. - Should we use RPS/RFS to queue the packet to another CPU before even handling it in our stack, to keep network data hot in a single cpu cache. (check Documentation/networking/scaling.txt)
At least, with recent kernels, we have many available choices to tune a workload.
-- 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/
| |