Intro
Why the Cerebras Wafer-Scale Engine
The Cerebras Wafer-Scale Engine (WSE) is a single chip that fills a whole wafer with a grid of tiles. Problems limited by memory bandwidth or communication on a cluster, such as stencils, particle methods and molecular dynamics, run on the WSE at a scale and speed a cluster can't reach.
Published results include:
- Molecular dynamics. 179 times the timesteps per second of the Frontier exascale supercomputer, with embedded-atom simulations of up to 800,000 atoms running at over 270,000 timesteps per second (SC24).
- Heat equation and stencil codes. 0.86 PFLOPS on a single wafer-scale system, about a third of its peak, solving a seven-point stencil system on a 600 × 595 × 1536 mesh with BiCGStab (SC20); on a cluster of 64 CS-3 systems, over 1.6 million time steps per second and perfect weak scaling at 88% of peak (SCA/HPC Asia 2026).
- Shallow water equations. A planetary-scale model of the tsunami after an asteroid impact, at 460 m resolution, on the same 64-system cluster (SCA/HPC Asia 2026).
Tungsten and Paint are a pair of languages, with their compiler, for writing programs that run across the whole wafer. The tutorial teaches them, and the Aviary collects complete applications written in them. Everything runs in the WSE simulator that comes with the experimental SDK, so you can start without Cerebras hardware.
How the programs are built: Tungsten and Paint
A program for the WSE has two halves that change independently: what each tile computes over time, and how the tiles are arranged and connected across the wafer. Tungsten describes the first. Paint describes the second.
The machine
The WSE is a two-dimensional mesh of tiles. Each tile has a core that runs its program, memory that no other tile can read, and a router that links it to its north, south, east and west neighbours and to its own core. Whatever tiles share, they send to each other.
Data moves as wavelets, 32-bit messages that a router passes in a single clock cycle. Wavelets travel on colors, 24 virtual channels. Each color is set up as a route through the grid, and congestion on one color does not block another.
The Cerebras SDK documentation and the reference pages call a tile a processing element (PE), and its core the compute engine (CE).
Tungsten
Tungsten describes what one tile does. You write
arrays, loops over index ranges such as ∀i in [0, N), functions, and the data the tile sends and
receives on sockets. The compiler maps this onto the tile's core and router: work that starts when
data arrives, independent parts that run concurrently, and the fabric transfers behind each socket.
Paint
Paint describes where kernels run and how they connect.
You place kernels on tiles and rectangles of tiles, give each its parameters, bind its sockets
to colors and route the colors through the routers. Layouts are built by composition: side by side
(hstack), stacked (vstack) or repeated (hstackrep, vstackrep).
Keeping the halves apart lets each change without the other. The same kernel runs on one tile or on a rectangle of thousands, with different parameters and no change to its code. A layout can be resized or rerouted without touching its kernels.
Tungsten and Paint do not use CSL, the language of the Cerebras SDK, and do not generate it. Paint compiles each kernel with the Tungsten compiler and builds the machine image for the whole layout. What they share with the Cerebras SDK is the machine and its simulator: every program on this site runs on the Cerebras SDK's simulator. The Tungsten and Paint references cover both languages construct by construct.
The heat equation in the Aviary shows both halves in a complete application: its page walks through the stencil, the exchange of ghost cells and the Paint layout.
Get started
The experimental SDK has the compiler, a program that runs the Cerebras SDK simulator, every application and the tutorial, in one directory.
- Download the experimental SDK. Run the tutorials shows how to use it.
- Run an application with
tungsten-tutorials -fand the path its page gives. Start with the heat equation:tungsten-tutorials -f projects/heateq9pt. - Build and simulate a tutorial lesson with
make TEST=tutorialin a writable copy of its directory. Start with lesson 1, Hello, wafer!.
The experimental SDK holds everything these steps need; no hardware is required.
Where to go next
| If you want to… | Go to |
|---|---|
| Run the applications and the tutorial yourself | Run the tutorials: the experimental SDK, and how to build and simulate any of them in it |
| Read the applications | Applications, with all of their files |
| Learn the languages step by step | The tutorial, from lesson 1, Hello, wafer! |
| Have a coding agent write a kernel | Write a kernel with a coding agent: the tutorial and the language references as its guide |
| Look up a construct | The Tungsten and Paint references |
| Compile, simulate and debug | Tools |