Raspberry Pi Safe Overclocking

Safe/Stable Raspberry Pi Overclocking

UPDATE: Click here for Raspberry Pi 2 Overclocking

Disclaimer: My recommendations are based on testing done with various configurations on two Raspberry Pi Model B version 2 boards. Both run Arch Linux ARM 24/7 without issue. Be warned, as with most hardware and software modifications, individual results may vary. For the last month or two I’ve been playing around with overclocking my Raspberry Pi boards. I’m sort of obsessed with performance tuning. As such, even before starting various Pi projects, my main focus has been on squeezing-out noticeable performance gains without compromising stability. Today, I’d like to share my /boot/config.txt settings and hopefully get some feedback as to how they perform on your Raspberry Pi.

Raspberry Pi Safe Overclock – config.txt

Select a gpu_mem config option below based on if you are using a desktop manager vs just shell. No GUI (eg. command line only)

With GUI (eg. OpenELEC, Raspbmc, etc.)

The reason I call these settings “safe” is because they don’t void the warranty and also I’ve had no crashes or reboots while using them. Refer to this page for explanations.

Benchmark Results

Here are my nbench benchmark results using the above settings on the Arch-WiPi image…

As a bonus, if you are just searching for modest speed improvements without any risk to hardware, then use these settings:

You can uncomment arm_freq_min, core_freq_min and sdram_freq_min if your Pi will be idle for extended periods (eg as a server running 24/7). This will allow it to use less resources when idle and as a result lower temperatures. If for some reason something goes wrong and you can’t boot, don’t wipe your card. Instead, simply remove it from Pi > plug into your Linux computer > browse to /boot/config.txt to find and correct any errors/typos in config or revert changes. Note that the *freq_min settings only work for setting below-default values. So for example to set a arm_freq_min higher than the default minimum of 700Mhz, one would have to VOID WARRANTY by adding  force_turbo=1. Don’t do this unless your project involves pushing the limits and make sure you have a plan in place to manage higher temps. Enjoy!

Looking for extreme speed?! (UPDATED: 05/31/2014)

Try my current config.txt settings for OpenELEC XbmcWarning: Use at your own risk…

Using force_turbo=1 no matter what the other config settings are, will void the warranty on your $35 board. ;) However, I’ve set temp_limit=75 to ensure that the overclocking values won’t be pushed during high temperatures, instead will be throttled back to default. This has yet to break any of my boards, I’ve also never hit the 75C temp limit. Results may vary but this reduces the lag experienced with force_turbo=0 (default on-demand overclocking). Note that the default safe temp_limit is 85 Celsius.

[Blog image courtesy geektopia.es]

Raspberry Pi Safe Overclocking was last modified: February 13th, 2015 by Hayden James

Tags:

Raspberry Pi Safe Overclocking

8 Responses

  1. This post was really helpful, thanks.

    I’ve been running your “Safe Overclock” setup on a completely stock Pi with no issues. Will try your extreme speed set up when I’m feeling crazy…

    Andy Mardell October 2, 2014 at 8:30 pm #
  2. Going to update this for the Raspberry Pi 2 shortly.

    Hayden James February 6, 2015 at 1:51 am #
  3. Does any of your overclock settings here have implications for SD card corruption?
    I assume you are having to run only from USB, but you don’t seem to mention this.

    bluenote March 2, 2015 at 8:58 pm #
    • I’ve tested above without any SD card corruption using Class 10 cards.

      Hayden James March 3, 2015 at 11:08 am #
  4. is this a good alternative?

    gpu_mem=256
    force_turbo=1
    initial_turbo=60
    temp_limit=80
    boot_delay=0
    disable_splash=1
    arm_freq=1000
    core_freq=500
    sdram_freq=500
    over_voltage=6
    # over_voltage_sdram=6
    # h264_freq=350
    # isp_freq=0
    # v3d_freq=350

    ***Should I add these lines?
    arm_freq_min=400
    sdram_freq_min=250
    core_freq_min=150
    => I NEVER shutdown my Pi, so is this a smart setting for better idle, or will it hurt overall performance more (create more ‘Lag’ perhaps)?

    TiM March 19, 2015 at 4:01 pm #
  5. This will not work (as some how expected), probably it’s force_turbo=1 which ignores these ‘idle’ settings I guess?
    arm_freq_min=400
    sdram_freq_min=250
    core_freq_min=150
    Things get a little hot imo so I think I might remove the ‘force_turbo=1′ so my Pi idle’s some more

    TiM March 23, 2015 at 9:34 am #
    • By default, the RPI board will overclock on demand only and not when idle or during low loads. force_turbo=1 can be used by those who don’t want the Raspberry Pi to rest even when idle. :) Heat is not an issue since the max of 85 C is a limit for safe operation set by the RPI devs. However, if that limit of 85 C is hit the RPI will auto throttle to defaults which would be counter productive. That said I’ve yet to hit that limit even with force_turbo.

      Hayden James March 23, 2015 at 4:17 pm #
  6. This seems to work best with my Pi1 (B):
    #############################
    gpu_mem=128
    force_turbo=1
    initial_turbo=60
    temp_limit=85
    boot_delay=0
    disable_splash=1

    arm_freq=1000
    core_freq=500
    sdram_freq=600
    over_voltage=6
    over_voltage_sdram=4

    disable_overscan=1
    hdmi_force_hotplug=1
    hdmi_ignore_cec_init=1

    framebuffer_depth=32
    framebuffer_ignore_alpha=1
    #############################

    TiM March 24, 2015 at 11:18 am #

Leave a Reply