Date: Fri, 06 May 2011 19:16:08 +0300 From: Alexander Motin <mav@FreeBSD.org> To: freebsd-net <freebsd-net@freebsd.org> Subject: TCP ISN increment without periodic callout Message-ID: <4DC41EC8.5060607@FreeBSD.org>
next in thread | raw e-mail | index | archive | help
Hi. Our TCP ISN mechanism uses callouts with 100Hz rate to implement linear ISN increment. For many systems it is the most active callout now. It was less important before, but now it uses additional timer interrupts in cases when new event timers subsystem could skip them, allowing CPU to remain in deeper sleep state, saving power. I've implemented simple patch, removing that periodic callout and updating ISN directly inside tcp_new_isn() function, taking to account how much time (ticks) passed since the last call: http://people.freebsd.org/~mav/no_isn_callout.patch Comparison on 3-CPU system shows idle interrupt rate reduction from 140Hz to 70Hz with this patch. Any comments/objections? -- Alexander Motin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4DC41EC8.5060607>