• Skip to primary navigation
  • Skip to main content
  • Skip to footer

Miguel Ángel Antolín Bermúdez

Personal portfolio & Blog

  • Home
  • Blog & posts
You are here: Home / Engineering / how to / Raspberry Pi / Raspberry 3B+ Overclock

Engineering, how to, Raspberry Pi / 21st April 2018

Raspberry 3B+ Overclock

Starting with the Raspberry Pi 3B, raspi-config no longer exposes overclock options in its menu. That does not mean overclocking is gone — it means you reach for a lower-level knob: /boot/config.txt. This Raspberry Pi 3B Plus overclock guide walks through the parameters, explains what each does, and shares benchmark results to help you land on a stable configuration.

A note on cooling

The Pi 3B+ runs warm even at stock speeds. Before overclocking, fit a heatsink on the BCM2837B0 SoC. The chip already has a metal heat spreader, but it still throttles aggressively approaching 85 °C. Good thermal management is what separates a stable overclock from a frustrating one.

Raspberry Pi 3B Plus overclock: editing /boot/config.txt

sudo nano /boot/config.txt

Add the following at the bottom:

gpu_freq=500
sdram_freq=550
arm_freq=1550
over_voltage=8
force_turbo=1

What each setting does

arm_freq — CPU clock in MHz. Pi 3B+ default is 1400. This is the most impactful parameter for CPU workloads.

gpu_freq — Sets core_freq, h264_freq, isp_freq, and v3d_freq together. On the Pi 3, core_freq drives the L2 cache and memory bus — raising it has a measurable effect on CPU performance, unlike the Pi 4B where CPU and memory bus clocks are decoupled.

sdram_freq — SDRAM clock in MHz. Pi 3B+ default is 500 MHz. Pushing this too high risks memory errors and SD card corruption — treat changes here with caution.

over_voltage — Core voltage adjustment. Range [-16, 8] maps to [0.8 V, 1.4 V] in 0.025 V steps. Values above 6 require force_turbo=1 and permanently set the warranty bit.

force_turbo — For any Raspberry Pi 3B Plus overclock, this forces the CPU to hold its configured frequency regardless of load. Combined with over_voltage above 6, this sets the warranty bit.

Complete reference: official Raspberry Pi config.txt documentation.

Benchmark results

sysbench --test=cpu --cpu-max-prime=20000 --num-threads=4 run
/boot/config.txtBenchmark results
Total timePer-request avgPer-request maxNotes
arm_freq=1550, gpu_freq=500, sdram_freq=550, over_voltage=8
71.80s28.71ms47.52msSlightly unstable stddev
[Recommended ★] arm_freq=1500, gpu_freq=450, sdram_freq=550, over_voltage=8
74.40s29.76ms46.05msStable, consistent
[Avoid] arm_freq=1550, gpu_freq=550, sdram_freq=650, over_voltage=8
91.97s36.78ms20126msMemory instability

The recommended profile runs at a slightly lower arm_freq (1500 vs 1550 MHz) yet delivers tighter timing and lower standard deviation — more consistent, predictable performance. The lower gpu_freq reduces heat, helping the CPU sustain its frequency without throttling during longer workloads.

I have also overclocked the Raspberry Pi 4B — check out that post for a comparison.

Filed Under: Engineering, how to, Raspberry Pi Tagged With: cpu, overclocking, Raspberry Pi, raspberry-pi,overclock,cpu,3B-plus,performance,cooling

Footer

Find me at

  • GitHub
  • LinkedIn

Recent Posts

  • Git for solo developers: the workflow that actually works
  • Self-hosting Vaultwarden on a VPS: your own Bitwarden server
  • Docker on a Raspberry Pi: running containers on ARM
  • WireGuard VPN on a Raspberry Pi: replace OpenVPN in 15 minutes
  • Claude Code on Mac: the complete setup guide

© 2026 · Made with ❤️ in Seville