ENGINEERING ★ 95 upvotes 2017

Mega Benchmark: Cost of AWS vs. GCE vs. IBM vs. Hetzner for Machine Learning

Retrospective Overview & Key Insights

Distilled analysis of the business dynamics, operational challenges, and strategic takeaways:

In this technical retrospective (2017), @Radim shares practical architectural lessons learned from running, scaling, or migrating production software under lean constraints.

Core Principles for Independent Builders:
1
Defaulting to simpler architectures (such as monolithic frameworks, SQLite, or managed VPS) prevents early engineering bankruptcy.
2
Evaluating true compute and egress costs reveals that high cloud bills can often be slashed by 80%+ through judicious re-platforming.
3
Code you write at 2 AM as a solo engineer must be easy to debug six months later without complex microservice dependencies.
Community Debate Themes:

HN engineers debated the tradeoffs between cloud convenience and raw server economics, database indexing strategies, and resisting premature architectural complexity.

Founder's Discussion Replies (@Radim)

Direct clarifications and follow-up comments shared by the author during the live discussion:

OP @Radim Original Author
2017

Hi guys, sorry for the unresponsive site. I had to add crap to the end of the URL so I could resubmit here. But now without caching, the HN traffic is melting our server :( EDIT: fixed.

__________

Answering the comments here:

GPUs: makes no sense for word2vec (and many other ML algos).

Azure: no support from Microsoft for our program. The Docker image and all code is 100% public though, so please run yourself & report the results. We'll be happy to update.

AWS spot: might still try that.

Thanks for the feedback!

Community Discussions & Critical Reviews

High-signal perspectives, counter-arguments, and peer founder insights debated on Hacker News (40 total discussions):

RD @rdtsc Peer Contributor
We found IBM’s Softlayer to be highly “new-user” friendly, which greatly expedited the process of configuring and ordering an instance

That's surprising. Usually the complaint is that IBM's stuff if complicated to figure out and Google and others are "user-friendly".

Softlayer is also the only platform that allows the provisioning of bare metal servers amongst the 3 cloud service providers,

Wonder if there is an opportunity there to deploy Kubernetes on it and manage it on your own. Before cloud orchestration was the super-secret-money-making sauce, but lately with some solutions being open source maybe that's changing and bare metal servers would become popular again. Wonder in general if Google talking about Borg and sponsoring Kubernetes was aimed at weakening Amazon's AWS's position.

OK @OkGoDoIt Peer Contributor

Here’s a cache: http://webcache.googleusercontent.com/search?q=cache:pxXMUXY7iKcJ:https://rare-technologies.com/machine-learning-hardware-benchmarks/&num=1&client=safari&hl=en&gl=us&prmd=ivn&strip=1&vwsrc=0

Looks like the instances they use are not GPU instances, so I’m not sure what the point of this is. Also they do not take into account EC2 spot pricing, which saves a ton of money and are the main reason I use AWS over alternate clouds.

DK @dkobran Peer Contributor

People are always talking about spot pricing when GPU compute comes up which is valid but not for the ML use-case (which this article is discussing). Spot is 100% incompatible with ML training. You need to be guaranteed that your many hour/multiple day job is going to complete which is antithetical to spot. At Paperspace, our goal is to provide a steady state low price that you can depend on because our primary audience is ML. Spot would be more ideal from an efficiency perspective but it’s just not viable in this context.

LI @likelynew Peer Contributor
With regards to stability, I had no issues with either AWS, Softlayer or Hetzner. However, when running a long task (the benchmark with Tensorflow-GPU) on GCE, the job abruptly stopped after a few days without showing any errors, and I couldn’t figure out why. A repeated attempt also resulted in the same failure.

I encountered same error with google cloud ML engine. No errors on warning when shutting down. Any idea why?

HO @hodgesrm Peer Contributor

As a matter of curiosity, is anyone out there using dedicated hosts in a big way for ML? The price/performance is pretty good based on these stats.

(I've used Hetzner in the past--in my experience their hosts are not very reliable but are super cheap.)

HISTORICAL ERA Cloud & Mobile Era (2014–2019)
COMMUNITY SCORE ★ 95 points
TOTAL DISCUSSIONS 40 comments
TOPICS & TECH STACK:
More Retrospectives by @Radim