Underclock with ClusterTune
ClusterTune is a free, open-source Android app by developer AurelioB that caps how fast your handheld's CPU is allowed to run. Lower caps can mean less heat, a quieter fan and longer battery life. Here's what it does, whether it's safe, and how to set it up, with the AYN Odin 3 as our example.
Quick start
- Download the APK from GitHub Releases only.
- Install, open, let it detect PServer (or Root).
- Allow Display over other apps + Notifications.
- Pick Small Underclock, play, step down if smooth.
- Pick Stock any time to undo.
- Developer
- AurelioB
- Get it
- GitHub Releases (APK)
- Latest
- v1.4.0 · Oct 17, 2026
- Needs
- Android 12+ · PServer or root
- Price
- Free · GPL-2.0
- Works on
- AYN/Retroid (PServer) or rooted Android 12+
What it does, in plain English
Your handheld's CPU isn't one block. It's split into clusters: groups of cores that share a speed setting. Phones and handhelds mix bigger fast cores with smaller ones. On the Odin 3's chip (Qualcomm Dragonwing Q8, the same CPU as the Snapdragon 8 Elite) ClusterTune shows two: cores 0-5 and cores 6-7.
Normally each cluster can boost as high as it likes, even when a game doesn't need it. Higher speeds need more power and make more heat. ClusterTune sets a lower maximum speed per cluster, so the CPU stops sprinting for no reason. Result: less power draw, which can mean less heat, a quieter fan and better battery life.
The "sometimes even benefits" part: in games limited by the graphics chip (GPU), less CPU heat and power can leave more headroom for the GPU, per the developer.
It doesn't undervolt and doesn't replace Android's CPU governor. It only caps top speed. Newer versions can also cap supported GPUs.
Is it safe? The risks
Lowering a speed limit is the gentle direction: it doesn't push the chip past what it's built for. Per its README, it only caps clock speed: it doesn't undervolt or replace the CPU governor. It was inspired by the community Odin 3 underclock scripts. And Stock restores everything.
- Slower games: too low a cap causes stutter or lower FPS, especially in CPU-heavy emulators (Switch, PS2).
- Stability: the developer warns changing limits can affect stability, temperatures, performance and battery, and says use it at your own risk.
- Third-party app: it's not made by AYN or Retroid. Only download from the official GitHub.
Our take (general guidance, not from the developer): a cap that's too low makes things slow, not broken. If anything feels off, tap Stock.
Install and set up
-
Check your device can use it
ClusterTune needs Android 12 or newer plus one of two access methods: PServer (built into AYN and Retroid handhelds, no root needed) or Root (any Android 12+ device with a workingsu).Why: Changing CPU limits needs system-level access. AYN and Retroid ship a built-in service ClusterTune can use, so the Odin 3 needs no root, Magisk or Shizuku.
ExceptionsThe Odin 2 Mini must use Root, per the developer. On other brands without root, ClusterTune can't apply anything.
More detail
On first launch it tries PServer first, then Root. -
Download the official APK
Go to the ClusterTune GitHub Releases page and download the latestClusterTune-v….apk(v1.4.0 as of Oct 17, 2026).Why: It's not on the Play Store. GitHub is the only official source; it's free and open source (GPL-2.0).
Only from GitHubDon't grab it from mirrors or re-upload sites. A
.sha256file is posted next to each APK if you want to check it. -
Install it
Open the APK from your browser or file manager. If Android asks, allow that app to install unknown apps, then tap Install.Why: Android blocks apps from outside the Play Store until you allow it once.
OptionalInstall downloaded updates permission is only needed if you want to update from inside ClusterTune.
-
First launch: let it detect access
Open ClusterTune. It detects the execution method automatically (PServer on AYN/Retroid). If it picks Root, approve thesuprompt.Why: This is how it gets permission to change CPU limits.
More detail
If it says no execution method was found, see Troubleshooting below. -
Grant the two permissions it asks for
Allow Display over other apps (lets profile controls open over your game) and Notifications (keeps automation running). The app links straight to each settings page.Why: Without these, the in-game controls and per-app profiles won't work. A persistent "ClusterTune is tuning your clusters" notification is normal.
-
Pick a profile
Start with a bundled profile (on the Odin 3: Small, Medium or Large Underclock) or make your own with the per-cluster sliders. Stock is your normal speed.Why: A profile is just a set of maximum speeds for each CPU cluster.
Start smallTry Small first, play your usual game, then step down only if it still runs smoothly.
-
Add the Quick Settings tile
Pull down your quick settings, tap edit (pencil) and drag the ClusterTune tile in. You can also open controls with a swipe from the left edge over a game.Why: Switch profiles mid-game without leaving it.
-
Optional: per-game profiles and boot
In settings you can reapply your last profile on boot, and assign profiles to specific apps so they switch automatically when that game opens.Why: Easy-to-emulate games can run on a big underclock while heavy games stay on Stock.
More detail
Auto Tune (experimental, off by default): turn on Enable autotune settings (experimental), then set an FPS target per game and ClusterTune tries to lower CPU/GPU ceilings while keeping up. -
Check it's working
Use CPU-Z to read each core's speed while playing.Why: The developer notes the AYN Thor's performance overlay can wrongly show 3.19 GHz when the CPU drops below 1 GHz.
Known display bugThat's an overlay bug (issue #32), not ClusterTune failing.
Starting profiles
These are the bundled presets that ship inside ClusterTune (from its GitHub source). The app picks them by chip: Odin 3 reports as CQ8725S, Odin 2 as QCS8550.
| Odin 3 profile | Cores 0-5 max | Cores 6-7 max |
|---|---|---|
| Small | 2.75 GHz | 3.07 GHz |
| Medium | 2.23 GHz | 2.25 GHz |
| Large | 1.79 GHz | 1.96 GHz |
| Odin 2 profile | Cluster 1 | Cluster 2 | Cluster 3 |
|---|---|---|---|
| Small | 1.79 GHz | 2.32 GHz | 2.48 GHz |
| Medium | 1.56 GHz | 2.05 GHz | 2.09 GHz |
| Large | 1.46 GHz | 1.79 GHz | 1.84 GHz |
Other devices: no bundled presets we could find. General guidance (ours, not sourced): start one or two steps below stock on each cluster, test the same game for 15-20 minutes, and lower again only while it stays smooth. Heavier emulators need more CPU, so keep their caps higher.
How to undo it
- Choose Stock in the app or Quick Settings tile. It restores the device's normal maximum speeds.
- Turn off reapply-on-boot and any per-app assignments if you don't want it coming back.
- To remove completely: uninstall ClusterTune, then restart the device.
Troubleshooting
- "No execution method found": make sure your device has PServer (AYN/Retroid) or a working root su, then rerun detection in Settings.
- Controls don't appear over games: allow Display over other apps.
- Game doesn't switch profile: check its assignment, the execution method and Notifications.
- "App automation needs attention": it retries by itself; check background restrictions if it continues.
- Overlay says 3.19 GHz: AYN display bug. Check in CPU-Z.
- Auto Tune stops: some builds don't expose frame stats; check its status card.
- Game stutters: go up one profile or back to Stock.
- Still stuck: open a GitHub issue with device, Android version and method, using History → Share.
Optional tip: pair it with a frame cap
A frame cap (FPS limit) stops a game from rendering more frames than you need. Set it in the emulator or game settings, or in your handheld's performance menu if it has one. Try 60 FPS first, or 40 FPS for heavier games.
Together with a ClusterTune profile, the chip does less work and stays cooler. In Christopher (Owner)'s experience, this keeps games smooth and runs cooler than ClusterTune on its own.
I normally run the Large Underclock profile. The Odin 3's CPU is so powerful that most games don't need it running flat out, so I only bump up to Medium on rare occasions.
I use it on pretty much every game. Where it really shines is Steam games running through DroidDeck (Steam/PC emulation) and some Xbox 360 games on XenDroid (from github.com/rfandango/XenDroid). Those benefit hugely.
A standout for me is Metal Gear Rising: Revengeance on XenDroid. It benefits hugely from ClusterTune. I run it with no frame limit and it already sits around 60 FPS, very rarely going above, so if you want, you can add a 60 FPS cap yourself. It's our pick in this Saturday's (Oct 24) What We're Playing post, with my full settings.
In most games I get roughly 45 minutes to almost an extra hour of battery. In heavier titles it's more like 30 extra minutes. The biggest thing I noticed is heat: the device runs noticeably cooler.
Optional tip: pair ClusterTune with a frame cap. Locking games at 60 FPS, or 40 FPS for some games, has helped me a lot. Games stay smooth and temps drop even lower than with ClusterTune alone.
Christopher's own experience on his Odin 3. Your results will depend on the game and settings.
Keep going
Sources
- ClusterTune on GitHub (AurelioB): official project page and README
- ClusterTune releases (v1.4.0, Oct 17, 2026; v1.3.0 notes)
- ClusterTune bundled profiles (CQ8725S.json, QCS8550.json)
- ClusterTune issue #32: AYN overlay shows 3.19 GHz bug
- ClusterTune GitHub issues (support)
- Developer's launch post on r/OdinHandheld (May 2, 2026)
- Odin 3 CPU Underclock scripts (inspiration, TheOldTaylor)
- Android Authority: Odin 3 uses Dragonwing Q8, same CPU/GPU as Snapdragon 8 Elite
- Retro Handhelds: Odin 3 reports SoC CQ8725S; Odin 2 is QCS8550
Checked Oct 21, 2026 against ClusterTune v1.4.0. Menu names may change with updates. Battery savings vary by game and device; the owner results above are one person's experience, not a lab test.