Performance gains of undervolting a T480s

I have been using a self-refurbished Thinkpad X230 for quite a while as a personal machine. I believe in the benefits of continuing to use old laptops [1, 2, 3]. However, recently, I’ve started to need to use a laptop to do presentations frequently, and the HDMI port on my X230 is not functioning fully, resulting in distorted colors and other distracting artifacts. I might try and repair that, someday.

However, due to pressing need, I instead picked up a used T480s from a good friend, which had a working HDMI port.

Over the first couple days of use, I noticed that this thing ran hot. Sure, I have the i7-8650u version, but the fans were spinning up far more than I’d like, and CPU temps would frequently exceed 95 °C for bursts at a time.

Naturally, I did a little digging.

It turns out, Linux and the T480s have a longstanding problem! I don’t understand the problem well enough to explain it here. But, essentially, people were seeing throttling and temperature issues with these machines on Linux (but not Windows). To be clear, this issue was found on an old Linux kernel (4.15, I’m on 6.14). I do not know if this specific problem is affecting me. However, through this, I learned about a fun tool for undervolting a T480s: throttled.

Even if this issue was resolved in newer kernels, I imagined that some undervolting could still help my thermals and performance. So, I tried it. In addition, to give the attempt the best chance it had, I also replaced the thermal paste with fresh Duronaut.

I was surprised to find a 12% improvement in single-core performance and a 24% improvement in multi-core on Geekbench 6!

MetricOriginalOptimizedChange (%)
Single-core13411499+11.8
Multi-core39894948+24.0

The laptop runs much cooler, and the fans spin up much less. It’s much more pleasant to use.

I ultimately landed on the following undervolt for this machine. (Remember, each chip is different, you might not be able to use these values.)

# All voltage values are expressed in mV and *MUST* be negative (i.e. undervolt)!
[UNDERVOLT]
# CPU core voltage offset (mV)
CORE: -135
# Integrated GPU voltage offset (mV)
GPU: -105
# CPU cache voltage offset (mV)
CACHE: -135
# System Agent voltage offset (mV)
UNCORE: -105
# Analog I/O voltage offset (mV)
ANALOGIO: 0

What a satisfying way to squeeze a little more performance out of a still-great laptop.

Posts from blogs I follow

Kaizen #4: Overhauled homelab

I started this “blog-series” to force myself to write more about my set up, and my continuous iterations. But it didn’t happen… until today! This post has been a long time coming, and I have kept the ideas in my head and notes. I will walk through everythi…

via Tim Hårek July 05, 2026

Better Models: Worse Tools

Better Models: Worse Tools Armin reports on a weird problem he ran into while hacking on Pi: The short version is that newer Claude models sometimes call Pi’s edit tool with extra, invented fields in the nested edits[] array. And not Haiku or some small m…

via Simon Willison's Weblog July 04, 2026

Verizon is About to Break our Watches

Two years ago I bought a pair of Gizmo watches for my kids ( review). There's a companion app for texting and configuration ("Gizmohub"), and Verizon is moving everyone over to a new one ("Verizon Family"). But the new app doesn't work for watch-only acco…

via Jeff Kaufman's Writing July 04, 2026

Generated by openring-rs from my blogroll.