26

Is there a nice way to monitor and/or control Intel Turbo Boost technology on Nehalem processors from a Linux host? I'm looking to do this RHEL/CentOS 5.5 hosts running stock or Realtime MRG kernels.

Has anyone here found a good way to leverage Turbo Boost in your environments?

Jeff Atwood
  • 12,994
  • 20
  • 74
  • 92
ewwhite
  • 194,921
  • 91
  • 434
  • 799

2 Answers2

22

i7z is a good tool for monitoring Intel Turbo Boost for Intel CPUs that support it (i7 and later) on Linux.

i7z screenshot of Turbo Boost at work

If it is working, you will see the current frequency change as you add load to the CPUs, due to the multiplier increasing dynamically under load. Try BurnP6 for this.

Basic description (pdf) of power states:

C0 - active state. While in C0, instructions are being executed by the core. For Intel® Turbo Boost technology, a core in C0 is considered an active core.

C1 - halt state. While in C1, no instructions are being executed. For Intel® Turbo Boost technology, a core in C1 is considered an active core.

C3 - While in C3 the core PLLs are turned off, and all the core caches are flushed. For Intel® Turbo Boost technology, a core in C3 is considered an inactive core.

C6 - While in C6, the core PLLs are turned off, the core caches are flushed and the core state is saved to the Last Level Cache. Power Gates are used to reduce power consumption to close to zero. For Intel® Turbo Boost technology, a core in C6 is considered an inactive core.

C7 - New, slightly deeper sleep state introduced with Sandy Bridge and later.

Be warned that C6 and C7 states are "deep" sleep modes and may have some latency penalties that might not be great for certain types of server workloads. For more detail see Intel's Power Management for Embedded Apps (pdf).

Turbo Boost is P0 state, kind of the opposite of sleep. It scales the CPU multipliers up when only a few cores are active, but ramps down under extreme multi-core load to prevent thermal issues with the CPU.

In general ACPI support must be enabled in Linux for i7z to show correct temps and Turbo Boost (dynamic multipliers above the default) to work. You can find useful information on how to enable Intel Turbo Boost on Linux in this post.

Jeff Atwood
  • 12,994
  • 20
  • 74
  • 92
aleroot
  • 3,160
  • 5
  • 28
  • 37
  • Thanks, i7z is a great app to check this is all working correctly (it was, but nice to be able to measure it). – Marcus D. Hanwell Apr 22 '12 at 20:35
  • 2
    one clarification, we did not find it necessary to disable all C-states (power saving modes) on the CPU to get Turbo Boost to work, as the linked post implies. However proper ACPI support in the BIOS and in the OS is absolutely critical. – Jeff Atwood Jul 31 '12 at 09:50
-2

XFreq is a GUI that shows RT turbo activities Source code @ http://code.google.com/p/xfreq

XFreq provides some Widgets to display the frequency (incl. turbo), the temperature, C-States and other features of the Intel Core i7 processors. It is also programmed for Core 2 and other Intel architectures.

Drew Khoury
  • 4,569
  • 8
  • 26
  • 28
CyrIng
  • 1
  • 1
  • Welcome to ServerFault. This answer doesn't really contribute much on its own; before Drew's edit, it wasn't much more than a link that could have been interpreted as a product advertisement. You might want to avoid older questions asking for product recommendations as most of them would be closed under [modern standards](http://blog.stackoverflow.com/2010/11/qa-is-hard-lets-go-shopping/). – Andrew B May 11 '14 at 22:59