epoch.training← the field guide

Field Guide · Part I — The machine · 02

// the operating system

Why every supercomputer runs Linux

All 500 of the world's fastest computers run Linux — and have, without exception, since 2017. That isn't a fashion statement. It's the only OS you're allowed to strip to the bone, patch at the source, and run on hardware the day it ships. The reasons are the reasons HPC exists.

Here is a fact that surprises people outside the field: on the TOP500 list — the twice-yearly ranking of the world's most powerful supercomputers — the "Operating System Family" column reads Linux, 500 out of 500. Every machine. This has been true for every list since November 2017, an unbroken run that stood at eight consecutive years as of the November 2025 list. No Windows, no proprietary Unix, no bespoke vendor OS holding the top spot. For a field that prides itself on custom everything, the operating system is the one place everyone converged on the same answer.

It didn't used to be this way

In the 1990s the machine room was a zoo of proprietary Unix: Cray's UNICOS, IBM's AIX, SGI's IRIX, Sun's Solaris — each welded to one vendor's hardware. Linux showed up on the list as a single system in the late 1990s and climbed from there. The tipping point was economic and practical: a research group could take a free, open kernel, run it on commodity x86 servers, and build a cluster at a fraction of the cost of a proprietary big iron. The "Beowulf" cluster movement turned that into a template, and once the national labs adopted it, proprietary Unix on the list withered. By 2017 it was gone.

Why Linux specifically, and not just "some Unix"

Three reasons, and they're the same reasons HPC is a distinct discipline:

What actually runs on the nodes

In practice a big machine runs a Linux distribution hardened for the job — El Capitan, the current #1, runs Red Hat Enterprise Linux; many centers use SUSE (SLES) or the community TOSS/Rocky rebuilds. On top sit the vendor's kernel patches, the network and GPU drivers, the parallel filesystem client, and the scheduler's node daemon. From a login node it feels like an ordinary Linux box:

$ uname -sr
Linux 5.14.0-427.el9.x86_64

$ ldd ./my_solver | grep -E 'mpi|cuda'
    libmpi.so.40   => /opt/cray/pe/lib/libmpi.so.40
    libcudart.so   => /usr/local/cuda/lib64/libcudart.so
A login node is just Linux — but linked against the vendor's MPI and GPU runtime. The supercomputer-specific parts are libraries and drivers layered on a familiar kernel.

Why it matters: the GPU cluster your model trains on is the same story. CUDA is Linux-first. The RDMA stack, the NCCL collective library, the container runtime, the Slurm or Kubernetes scheduler — all assume Linux, because that's the OS the whole HPC lineage standardized on. When you SSH into a training cluster and find yourself in bash looking at NVIDIA drivers and an InfiniBand fabric, you've inherited thirty years of supercomputing settling on one answer. Knowing why makes the environment legible instead of arbitrary.

Sources & where to go deeper

TOP500, "Operating System Family / Linux", TOP500 statistics — the running count showing Linux at 500 of 500 systems.
TOP500, "November 2025 TOP500 List" — El Capitan (1.742 EFlop/s) at #1, running Red Hat Enterprise Linux.
A. Onoszko / It's FOSS, "Linux Runs on All of the Top 500 Supercomputers, Again!", It's FOSS — a plain write-up of the 100%-Linux milestone and its date. (Secondary/journalistic source; the primary figures are the TOP500 statistics above.)

This is one page of twenty.

The workshops go deep on the real thing — scheduling, storage, interconnect, GPUs — hands-on, on real infrastructure, from someone who's run these machines at national scale.

See the trainings →