← back

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
1248threadsCAX21M1CAX21M1CAX21M1CAX21M1050,000100,000150,000200,000250,000300,000350,000400,000450,000→ events100 K33 K199 K66 K400 K129 K480 K129 K
Figure 1. sysbench CPU benchmark results
sysbench memory --threads=x run
1248threadsCAX21M1CAX21M1CAX21M1CAX21M102,0004,0006,0008,00010,00012,00014,00016,00018,00020,000→ MiB/s7580424412811348421124575574335404
Figure 2. sysbench memory benchmark results

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
1248threadsCAX21M1CAX21M1CAX21M1CAX21M102004006008001,0001,200→ MiB/s written847114116316510612361304299
Figure 3. sysbench fileio benchmark results (--file-test-mode=seqwr)

And finally, I wanted to see how they compare when compiling one of my Rust code bases.

time cargo build --release
CAX21M1020406080100120140160180→ seconds57190
Figure 4. Compilation time of Rust application

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.