cvs commit: src/sys/i386/i386 local_apic.c
John Baldwin
jhb at FreeBSD.org
Wed Mar 2 14:24:38 GMT 2005
On Wednesday 02 March 2005 09:17 am, John Baldwin wrote:
> jhb 2005-03-02 14:17:43 UTC
>
> FreeBSD src repository
>
> Modified files:
> sys/i386/i386 local_apic.c
> Log:
> Tweak the lapic timer code to get the performance closer to the pre-lapic
> timer case:
> - Remove the virtual fooclock interrupt counters as they have served
> their purpose.
> - Adjust the dividers for the different clock such that profhz is now a
> multiple of stathz as in the non-lapic case, and the timer now runs at
> hz * 2 rather than hz * 3. With the new divisors, the default clock
> rates are:
>
> kern.clockrate: { hz = 1000, tick = 1000, profhz = 666, stathz = 133 }
With these changes and the 8254 interrupt turned off completely, I actually
seem to get slightly better performance than pre-lapic timer, though ministat
says that pre-lapic timer, the code with this change, and this change + 8254
interrupt are all relatively the same with 95% confidence. Before this
change I was seeing about a 0.3% performance regression with lapic timer with
95% confidence.
Also, it now should be obvious that profiling is patently evil. :)
--
John Baldwin <jhb at FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve" = http://www.FreeBSD.org
More information about the cvs-src
mailing list