A while back I upgraded some old gateways from FreeBSD 4.x to FreeBSD 6.x. I thought the upgrade had went smoothly, but a while later I started having users complaining about throughput. Luckly I still had a backup of the FreebSD 4.x install. Did some throughput tests with iperf. Low and behold 4.x appeared to have twice the throughput. After lots of experimenting I determined that turning off polling fixed the issue. So I started digging through the kernel code to see what had changed in the polling logic. Finally arived at the fact that "kern.polling.idle_poll" defaults to 1 in 4.x and 0 in 6.x and above. Turning polling back on with idle-poll enabled fixed the performance issue.
The man page for polling states: kern.polling.idle_poll Controls if polling is enabled in the idle loop. There are no reasons (other than power saving or bugs in the scheduler's han- dling of idle priority kernel threads) to disable this. So why is it now disabled by default? Looking back through cvs the change was made by Luigi way back in August of 2002. -- ------------------------------------------------------------------------ Larry Baird | http://www.gta.com Global Technology Associates, Inc. | Orlando, FL Email: l...@gta.com | TEL 407-380-0220, FAX 407-380-6080 _______________________________________________ freebsd-net@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"