Intel TurboBoost in practice
Alexander Motin
mav at FreeBSD.org
Sat Jul 24 13:54:27 UTC 2010
Hi.
I've make small observations of Intel TurboBoost technology under
FreeBSD. This technology allows Intel Core i5/i7 CPUs to rise frequency
of some cores if other cores are idle and power/thermal conditions
permit. CPU core counted as idle, if it has been put into C3 or deeper
power state (may reflect ACPI C2/C3 states). So to reach maximal
effectiveness, some tuning may be needed.
Here is my test case: FreeBSD 9-CURRENT on Core i5 650 CPU, 3.2GHz + 1/2
TurboBoost steps (+133/+266MHz) with boxed cooler at the open air. I was
measuring building time of the net/mpd5 from sources, using only one CPU
core (cpuset -l 0 time make).
Untuned system (hz=1000): 14.15 sec
Enabled ACPI C2 (hz=1000+C2): 13.85 sec
Enabled ACPI C3 (hz=1000+C3): 13.91 sec
Reduced HZ (hz=100): 14.16 sec
Enabled ACPI C2 (hz=100+C2): 13.85 sec
Enabled ACPI C3 (hz=100+C3): 13.86 sec
Timers tuned* (hz=100): 14.10 sec
Enabled ACPI C2 (hz=100+C2): 13.71 sec
Enabled ACPI C3 (hz=100+C3): 13.73 sec
All numbers tested few times and are repeatable up to +/-0.01sec.
*) Timers were tuned to reduce interrupt rates and respectively increase
idle cores sleep time. These lines were added to loader.conf:
sysctl kern.eventtimer.timer1=i8254
sysctl kern.eventtimer.timer2=NONE
kern.eventtimer.singlemul=1
kern.hz="100"
PS: In this case benefit is small, but it is the least that can be
achieved, depending on CPU model. Some models allow frequency to be
risen by up to 6 steps (+798MHz).
PPS: I expect even better effect achieved by further reducing interrupt
rates on idle CPUs.
--
Alexander Motin
More information about the freebsd-hackers
mailing list