# SpeedStep

SpeedStep is a trademark for a series of dynamic frequency scaling technologies (codenamed Geyserville[1] and including SpeedStep, SpeedStep II, and SpeedStep III) built into some Intel microprocessors that allow the clock speed of the processor to be dynamically changed (to different P-states) by software. This allows the processor to meet the instantaneous performance needs of the operation being performed, while minimizing power draw and heat generation. Enhanced Intel SpeedStep is sometimes abbreviated as EIST.

## Explanation

Running a processor at high clock speeds allows for better performance. However, when the same processor is run at a lower frequency (speed), it generates less heat and consumes less power. In many cases, the core voltage can also be reduced, further reducing power consumption and heat generation. This can conserve battery power in notebooks, reduce running costs and environmental footprint, extend processor life, and reduce noise generated by variable-speed fans. By using SpeedStep, users can select the balance of power conservation and performance that best suits them, or even change the clock speed dynamically as the processor burden changes.

The power consumed by a CPU with a capacitance C, running at frequency f and voltage V is approximately[2]

$P = C V^2 f.$

For a given processor, C is a fixed value. However, V and f can vary considerably. For example, for a 1.6 GHz Pentium M, the clock frequency can be stepped down in 200 MHz decrements over the range from 1.6 to 0.6 GHz. At the same time, the voltage requirement decreases from 1.484 V to 0.956 V. The result is that the power consumption theoretically goes down by a factor of 6.4. In practice, the effect may be smaller because some CPU instructions use less energy per tick of the CPU clock than others. For example, when an operating system is not busy, it tends to issue halt instructions, which suspend operation of parts of the CPU for a time period, so it uses less energy per tick of the CPU clock than when executing productive instructions in its normal state. For a given rate of work, a CPU running at a higher clock rate will execute a greater proportion of HLT instructions. The simple equation which relates power, voltage and frequency above also does not take into account the static power consumption of the CPU. This tends not to change with frequency, but does change with temperature and voltage. Hot electrons, and electrons exposed to a stronger electric field are more likely to migrate across a gate as "gate leakage" current, leading to an increase in static power consumption.

Older processors, using older versions of the SpeedStep technology, have fewer increments, such as the Pentium 4-M. For example, a 1.7 GHz Pentium 4M can run at 1.6 GHz, at 1.2 GHz, and at 786 MHz.

SpeedStep technology is partly responsible for the reduced power consumption of Intel’s Pentium M processor, part of the Centrino brand.

## Problems when using SpeedStep

Microsoft has reported that there may be problems previewing video files when SpeedStep (or the AMD equivalent PowerNow!) is enabled under Windows 2000 or Windows XP.[3] It also may decrease reliability when overclocking[citation needed] .

## Operating system support

### BSD

The BSD kernels have full SpeedStep support integration.

### Linux

Operating systems and/or distributions, utilizing Linux kernel, have full SpeedStep support integrated since kernel version 2.6.

### Mac

Mac OS X also has SpeedStep built into the kernel, since the release of the Intel version of Mac OS X 10.4 and is already enabled. It cannot be controlled in the System Preference "Energy Saver." To disable this feature, and set a specific clock speed (full speed or reduced) requires a third party application, such as coolbook.

### Solaris

Solaris has supported SpeedStep since OpenSolaris SXDE 9/07.[4]

### Windows

Older versions of Microsoft Windows, Windows 2000 and earlier, need a special driver and dashboard application to access the SpeedStep feature. Intel's website specifically states that such drivers must come from the computer manufacturer; there are no generic drivers supplied by Intel which will enable SpeedStep for older Windows versions if one cannot obtain a manufacturer's driver.[5][6]

Under Microsoft Windows XP, SpeedStep support is built into the power management console under the control panel. In Windows XP a user can regulate processor speed indirectly by changing power schemes. The "Home/Office Desk" setting disables SpeedStep, the "Portable/Laptop" power scheme enables SpeedStep, and the "Max Battery" uses SpeedStep to slow the processor to minimal power levels as the battery weakens.[7] The SpeedStep settings for power schemes, either built-in or custom, cannot be modified from the control panel's GUI, but can be modified using the POWERCFG.EXE command-line utility.[8]

In contrast, AMD continues to supply and support drivers for its competing PowerNow! technology that will work on Windows 2000, ME, 98, and NT.[9][10]

## Versions

V1.1 is used by second generation Pentium III processors. It enables the CPU to switch between two modes: high and low frequency. This is done by modifying the CPU's multiplier. A 1 GHz Pentium III consuming about 20 watts could be reduced to 600 MHz which reduces the power consumption to about 6 watts.[citation needed]

V2.1 (Enhanced SpeedStep) is used in Pentium III-Mobile processors and is similar to the previous version, but in the low frequency mode the CPU also uses a different voltage than the high frequency mode.

V2.2 is adapted for Pentium 4-Mobile processors. With this, a 1.8 GHz Pentium 4-M consuming about 30 watts can lower its frequency to 1.2 GHz, thus reducing power consumption to about 20 watts.

V3.1 (EIST) is used with the first and second generation of Pentium M processors (Banias and Dothan cores, used in Centrino platforms). With this technology, the CPU varies its frequency (and voltage) between about 40% and 100% of its base frequency in increments of 100 MHz (for Banias core) or 133 MHz (for Dothan core). With this technology, Intel also introduces realtime Level 2 cache capacity variation, further improving power savings.

V3.2 (Enhanced EIST) is adapted for multi-core processors with unified Level 2 cache.