Intel TurboBoost in practice

Alan Cox alan.l.cox at gmail.com
Tue Jul 27 17:17:47 UTC 2010


On Mon, Jul 26, 2010 at 9:11 AM, Alexander Motin <mav at freebsd.org> wrote:

> Robert Watson wrote:
> > On Sun, 25 Jul 2010, Alexander Motin wrote:
> >>> The numbers that you are showing doesn't show much difference. Have
> >>> you tried buildworld?
> >>
> >> If you mean relative difference -- as I have told, it's mostly because
> >> of my CPU. It's maximal boost is 266MHz (8.3%), but 133MHz of them is
> >> enabled most of time if CPU is not overheated. It probably doesn't, as
> >> it works on clear table under air conditioner. So maximal effect I can
> >> expect on is 4.2%. In such situation 2.8% probably not so bad to
> >> illustrate that feature works and there is space for further
> >> improvements. If I had Core i5-750S I would expect 33% boost.
> >
> > Can I recommend the use of ministat(1) and sample sizes of at least 8
> > runs per configuration?
>
> Thanks for pushing me to do it right. :) Here is 3*15 runs with fresh
> kernel with disabled debug. Results are quite close to original: -2.73%
> and -2.19% of time.
> x C1
> + C2
> * C3
> +-----------------------------------------------------------------+
> |+        *                                  x                    |
> |+        *                                  x                    |
> |+        *                                  x                    |
> |+        *                                  x                    |
> |+        *                                  x                    |
> |+        *                                  x                    |
> |+        *                                  x                    |
> |+       **                                  x                    |
> |+ +     **                                 xx                    |
> |+ +     ** **                              xx                   x|
> |                                         |__M_A____|             |
> |A|                                                               |
> |        |A|                                                      |
> +-----------------------------------------------------------------+
>    N        Min        Max     Median           Avg        Stddev
> x  15      12.68      12.84      12.69     12.698667   0.039254966
> +  15      12.35      12.36      12.35     12.351333  0.0035186578
> Difference at 95.0% confidence
>        -0.347333 +/- 0.0208409
>        -2.7352% +/- 0.164119%
>        (Student's t, pooled s = 0.0278687)
> *  15      12.41      12.44      12.42         12.42  0.0075592895
> Difference at 95.0% confidence
>        -0.278667 +/- 0.0211391
>        -2.19446% +/- 0.166467%
>        (Student's t, pooled s = 0.0282674)
>
> I also checked one more aspect -- TurboBoost works only when CPU runs at
> highest EIST frequency (P0 state). I've reduced dev.cpu.0.freq from 3201
> to 3067 and repeated the test:
> x C1
> + C2
> * C3
> +-----------------------------------------------------------------+
> | x                           +                              *    |
> | x                           +                              *    |
> | x                           +                              *    |
> | x                           +                              *   *|
> | x  x                        +                              *   *|
> | x  x                        +  +                           *   *|
> | x  x                        +  +                           *   *|
> | x  x                        +  +                           *   *|
> | x  x                    +   +  +   +                       *   *|
> ||MA|                                                             |
> |                           |_MA_|                                |
> |                                                            M_A_||
> +-----------------------------------------------------------------+
>    N        Min        Max     Median           Avg        Stddev
> x  15      13.72      13.73      13.72     13.723333  0.0048795004
> +  15      13.79      13.82       13.8     13.803333  0.0072374686
> Difference at 95.0% confidence
>        0.08 +/- 0.00461567
>        0.582949% +/- 0.0336337%
>        (Student's t, pooled s = 0.00617213)
> *  15      13.89       13.9      13.89        13.894  0.0050709255
> Difference at 95.0% confidence
>        0.170667 +/- 0.00372127
>        1.24362% +/- 0.0271164%
>        (Student's t, pooled s = 0.00497613)
>
> In that case using C2 or C3 predictably caused small performance reduce,
> as after falling to sleep, CPU needs time to wakeup. Even if tested CPU0
> won't ever sleep during test, it's TLB shutdown IPIs to other cores
> still probably could suffer from waiting other cores' wakeup.
>
>
In the deeper sleep states, are the TLB contents actually maintained while
the processor sleeps?  (I notice that in some configurations, we actually
flush dirty data from the cache before sleeping.)

Alan


More information about the freebsd-hackers mailing list