self-host →

RunsOn c8g.xlarge · EBS gp3 vs Blacksmith 4 vCPU arm64

RunsOn does the Rust build for 4.7× less and 1.9× faster. Both 4 vCPU arm64.

Price per minute 3.8× cheaper on RunsOn: $0.0013 vs $0.0050the builds are not all compared on cost yet
Rust build 4.7× cheaper on RunsOn: $0.0057 vs $0.0267RunsOn 1.9× faster: 2m 43s vs 5m 04s
TypeScript build not yet RunsOn 1m 20s (1 run) · Blacksmith 2m 21s (5 runs)
Docker build 12m 12s Blacksmith only · RunsOn not run

Side by side

Every measurement both runners share, cost first. The dot marks the better value; gap is the larger over the smaller.

Measurement RunsOn Blacksmith Gap
Cost
Cost per Rust build $0.0057 $0.0267 4.7× RunsOn
Cost per TypeScript build $0.0038 $0.0132 not yet
Cost per Docker build n/a: Not run: the PostHog Docker build needs more than 8 GB of memory; it ran out of memory on 8 GB runners. $0.0654 —
Price per minute $0.0013 $0.0050 3.8× RunsOn
Real builds, wall time
Rust build (spotify-⁠player) 2m 43s 5m 04s 1.9× RunsOn
TypeScript build (opencode) 1m 20s 2m 21s not yet
Docker build (PostHog) n/a: Not run: the PostHog Docker build needs more than 8 GB of memory; it ran out of memory on 8 GB runners. 12m 12s —
CPU & memory
PassMark single-⁠thread (points) 1,940 1,343 1.4× RunsOn
PassMark CPU Mark, all cores (points) 3,905 3,778 ≈ even
sysbench CPU, 1 thread (events/s) 3,333 930 3.6× RunsOn
7-⁠Zip compression (MIPS) 25,843 15,351 1.7× RunsOn
Memory read bandwidth 19.3 GiB/s 9.0 GiB/s 2.1× RunsOn
Measurement RunsOn Blacksmith Gap
Workspace disk (fio)
Random read, 4k QD32 (IOPS) 2,992 155,975 52.1× Blacksmith
Random write, 4k QD32 (IOPS) 2,994 24,132 8.1× Blacksmith
Random read, 4k QD1 (IOPS) 1,703 24,897 14.6× Blacksmith
QD1 read latency, p99 889 µs 39 µs 22.7× Blacksmith
Sequential read 401 MiB/s 1.7 GiB/s 4.4× Blacksmith
Sequential write 401 MiB/s 742 MiB/s 1.9× Blacksmith
Sync write, 4k + fdatasync (IOPS) 539 7,118 13.2× Blacksmith
Network, cache & Docker
Download from GitHub 240 MiB/s 85 MiB/s 2.8× RunsOn
Cache restore, 4 GB (actions/cache) 22s 36s 1.6× RunsOn
Cache save, 4 GB (actions/cache) 14s 21s 1.5× RunsOn
docker pull 7.3s 13.7s 1.9× RunsOn
Database
pgbench read/write (TPS) 2,493 1,893 1.3× RunsOn
pgbench read-⁠only (TPS) 39,334 14,786 2.7× RunsOn
Queue
Queue under burst load 18s 15s 1.2× Blacksmith
  • ≈ even: under 5% apart, or a build inside both runners' run-to-run spread
  • not yet: one side has fewer than 3 runs, so the two values are shown but not compared
  • Queue: identical jobs queued at the same instant (burst suite)
  • 2 shown, not compared yet (under 3 runs on a side)
  • 2 missing on one side or both
  • RunsOn at EC2 spot, its default (7-day average of the cheapest us-east-1 zone's spot price, fetched 5 Oct 2026); the jobs ran on spot
  • Cost: a managed SaaS runner against RunsOn self-hosted on your AWS account; the effort of running it was not measured

Other head-to-heads