Raspberry Pi Turbo Overclocking

Raspberry Pi Turbo Overclocking

Overclocking is the practice of increasing the oscillator frequency of a computer system so that the number instructions per second (IPS) it processes increases thereby making the system faster.


Config.txt

The config.txt file holds many parameters for the Raspberry Pi hardware. These low-level settings may affect the safe operation of your computer, therefore be very careful when changing them. Here are some useful parameters together with their default values.

Using the parameter force_turbo=1, and current_limit_override within the config.txt file will void your warranty. The manufacturer (Foundation) can easily detect this by the change in state of a "Sticky Bit" within the Broadcom BCM2835 processor. Therefore, any such attempt will render your warranty null and void.

arm_freq=700

This is the frequency of the arm core in MHz

over_voltage=0

This sets the ARM core voltage.

over_voltage_sdram=0

This sets the voltage of the memory.

sdram_freq=400

This sets the frequency of the memory. If the speed is too fast then it may get corrupted.

gpu_freq=250

The GPU frequency sets the frequency of many other subsystems simultaneously.

force_turbo=0

The default value is 0 which means it is OFF.

temp_limit=85

When the core temperature reaches 85 °C, turbo mode disengages, returning the clock and voltage to default values.

Example Config.txt

  1. arm_freq=1000
  2. core_freq=500
  3. temp_limit=75
  4. sdram_freq=500
  5. over_voltage=5

Overvolting

A processor with a faster clock speed consumes more power, therefore requiring a greater voltage. Unfortunately, this also results in higher heat dissipation, and therefore a cooling strategy is required. Excessive temperatures can reduce the useful life of the Broadcom BCM2835 processor, as well as making it very unstable. In addition, operating the SDRAM at higher speeds and voltages may result in corruptions, and the memory failing.

Turbo Mode

Turbo mode is the official safe way of improving performance without invalidating the warranty. You will need to obtain and install the latest version of the Raspbian operating system. The new image also adds many more features including applets and widgets that will monitor and report the core processor temperature and frequency.

ARM processors use a temperature sensor to determine the core temperature. When the temperature reaches a ceiling limit, the processor runs slowly until it is back within the safe zone. The turbo software integrated into the Raspbian image uses this to enable or disable overclocking and overvolting. The turbo mode dynamically engages and disengages depending upon the core temperature reaching 85 °C, thus allowing the processor to reach speeds of up to 1 GHz.

The turbo mode may not work well for everyone because each processor and memory chip is uniquely different at microscopic level. The overall setup of the Raspberry Pi might also be different from user to user. In case the Raspberry Pi freezes or does not boot after setting the Turbo mode, there is provision set aside to temporarily disable the mode by holding down the "Shift Key" when the Pi is booting.

Raspi-Config

ARM Core SDRAM
(MHz) (MHz) (MHz) Overvolt
None 700 250 400 0x0
Modest 800 300 400 0x0
Medium 900 333 450 2x0
High 950 450 450 6x0
Turbo 1000 500 500 6x0

The raspi-config file offers a choice of five pre-set options as shown in the table above. The default setting is 700 MHz shown in green, whilst the Turbo mode is in red where the frequency can reach as high as 1000 MHz. Obviously at such a speed it might be a good idea to fit a heatsink and fan. A graphics intensive game, which normally requires more processing, can test the turbo mode. The foundation discovered an improvement of 64 % increase in speed for floating point arithmetic using the "nBench" program.

The Raspberry Pi uses an advanced Samsung memory IC (K4P2G324ED) that operates well at higher speeds; however, the SD memory card causes a bottleneck, as it cannot operate at higher speeds. This may result in corruptions and a total failure of the card.


Liquid nitrogen is usually used to keep spacecraft computers cool, and the Russians use such a method for the Soyuz TMA Spacecraft; however, it is extremely useful for keeping the temperature of the processor cool during overclocking. The power consumption also increases during this time, and therefore a high quality power supply is necessary. My friend Rufus..., who has access to liquid nitrogen, managed to get 2.23 GHz speed before the core gave up.