08 Aug 2026
Apple M1 vs Hetzner CAX21
Benchmarking homeserver hardware
I’m in the process of migrating my VPS to a MacBook Air M1 running Asahi in my closet. Before I decommission the VPS though, I’m curious to see what the performance difference is. So here are a couple of non-representative benchmarks comparing the M1 to an Ampere-based CAX21 at Hetzner.
By the way, I’ve benchmarked these Arm-based Hetzner machines before. Last time, I was in the process of migrating from an x86 machine to the CAX31. In the meantime, I’ve downgraded to the CAX21, which is why these numbers don’t exactly match up.
Anyway, here are the specs of the two machines:
CAX21: 4 vCPU, 8 GB RAM
M1: 4 performance cores, 4 efficiency cores, 16 GB RAM
Note that we’re comparing a VPS with noisy neighbors and a modest production load to an idle M1. Also, the tests are rather short, so the impact of thermal throttling on the passively cooled M1 is not visible. I did say these would be non-representative benchmarks.
sysbench cpu --threads=x run
sysbench memory --threads=x run
I have no clue what happened here at 8 threads for the M1. I guess the performance cores don’t like to share.
sysbench fileio --threads=x --file-test-mode=seqwr run
And finally, I wanted to see how they compare when compiling one of my Rust code bases.
time cargo build --release
Verdict
It’s simultaneously unsurprising that a dedicated M1 outperforms a tiny slice of a server CPU, and yet I’m always blown away by what this little 6-year-old machine can do. Needless to say, this migration will be a nice little upgrade, although I’m more excited about the energy efficiency of the Air (<2W idle) than its raw power.