Intel TurboBoost in practice
mav at FreeBSD.org
Mon Sep 20 17:16:42 UTC 2010
Ivan Voras wrote:
> On 09/19/10 06:57, Alexander Motin wrote:
>> Getting back to that topic I would like to share some more results. This
>> time I was testing Core(TM) i7 870 @ 2.93GHz. It has 8 logical cores and
>> bigger allowed TurboBoost effect. I was testing real time of net/mpd5
>> port building, using single CPU. I was testing it with HZ=1000 with
>> different C-states allowed and with/without kern.eventtimer.idletick
>> sysctl enabled (supported by the latest event timer code in HEAD). This
>> sysctl, when disabled, allows to avoid most of timer interrupts on idle
>> cores, allowing them to sleep deeper.
> If I understand correctly, TurboBoost is supposed to increase the
> frequency of one or a small number of cores only?
In present CPUs, depending on model, it can slightly (133/266MHz)
increase frequency of all cores if temperature and power permit. But if
some cores are idle - active ones can rise frequency much higher (on
some low-frequency CPU models almost twice).
> What is the physical increase in frequency on this CPU when TurboBoost
> is enabled?
On my Core i7 870 @ 2.93GHz it is +266MHz if all cores are active, or
+533MHz if two physical cores are idle, or +666MHz if three physical
cores are idle.
>> As you may see, with full timer interrupt rate TurboBoost effect (part
>> of it, that enabled by some number of idle cores) is about 3-4%. CPUs
>> are not sleeping long enough. But without extra interrupts on idle cores
>> effect increasing to more then 10%!
> Is this interpretation correct: when building with single core (-j1
> effectively), using TurboBoost with the new code is >10% faster than
> without TurboBoost?
Yes. If compare to system with TurboBoost disabled completely,
difference should be even bigger. As I've said above, some part of
TurboBoost benefit obtained even with untuned system. But specially
tuned system (with new code and enabled C2/C3) on my CPU in my cooling
condition obtains additional 10% from it.
> Does it have any effect if you try using all the cores?
If all cores are busy, the only possible TurboBoost effect is +266MHz
and only until CPU get hot or start consume more power then it's TDP
More information about the freebsd-performance