A satellite full of GPUs runs on sunlight and dumps its heat into space. In eclipse the power drops; the radiators can only shed so much heat. The compute throttles itself to fit.
Launch it from Starbase, then fly the camera and push the compute demand.
A simulation with stated, made-up numbers — not SpaceX hardware or data. Skip to orbit
About Orbit Compute Lab
The core idea behind orbital AI compute, made playable. A satellite's solar array makes power, GPUs turn it into compute and waste heat, a battery carries the load through eclipse, and radiators are the only way to get heat out. A controller throttles the GPUs so the satellite never runs out of power or overheats.
The rack inside — Rack · firmware tab
The satellite is one NVL72-class GPU rack. The Rack · firmware tab replays real recorded scenarios from Rack Fault Lab (a C++ BMC firmware core) tick-for-tick: the per-GPU state machine, the SEL event log, and the regression checks the test suite asserts. A radiation SEU storm, silent data corruption and a radiator shortfall are the orbit failure modes; the policies-off run fails on purpose. Same rack, two views — this page is the orbital envelope, that one is the firmware.
Camera
Follow trails the satellite · Onboard rides it · Earth / Satellite orbit either one (drag / scroll) · Top looks down on the orbit. Sites toggles the ground-site labels.
Power: in sunlight the array charges the battery and runs the load; in eclipse the battery carries it. Demand over supply → compute cut (power limit).
Heat: compute becomes heat; radiators shed to a ceiling. Past 90 °C → compute capped (thermal limit).
Overclock & the fault policy: push demand past 100% and the GPUs draw more than the array makes — the battery drains and they run past the safe limit. With the fault policy on, a protective thermal trip saves them (in sunlight the trip fires first ~20 s; in eclipse the battery browns out first). Turn the policy off and overclock and nothing stops it — the rack runs to a total meltdown and GPUs are destroyed. Same lesson as the firmware's policies-off scenario, on the hardware itself.
Satellite specs
AI1 · Starmind — the production design (210 kW array, NVL72, sun-synchronous); thermally limited, so overclock melts it down. AI1-B · burst — oversized radiators, power-limited: overclock drains the battery first, then the policy safe-shuts-down and auto-reboots once it has recharged for a safe start. AI1-XL · heavy — more array/compute and a big battery for deep eclipses. Each lists its real charge/discharge rate on the Battery tile.
What's physically grounded vs. stylized
Grounded: the power/heat trade-off; the controller throttles compute as the GPUs approach 90 °C so temperature can't run away; the solar arrays track the Sun on an array drive (not thrusters), with a smooth penumbra ramp at the shadow edges; the body nadir-points at Earth; the orbit is a fixed repeating path (the ring).
Stylized: the launch is a cinematic ascent, not a real trajectory; Earth, orbit and satellite are not to scale; thermal/power use lumped first-order models. Attitude in reality is held by reaction wheels / magnetorquers; thrusters do orbit keeping.
Assumptions (round, illustrative)
Solar array
210 kW peak when sunlit
Compute
up to 175 kW; waste heat ≈ compute power
Radiators
shed up to ~160 kW; the controller throttles compute as the GPUs near 90 °C
Battery
400 kWh, carries the load through eclipse
Orbit
radius and period from real gravity (μ = GM = 398,600 km³/s², Kepler's third law): here ≈ 530 km altitude, v ≈ 7.6 km/s, T ≈ 95 min — compressed to ~24 s on screen at 1×. Sun-synchronous ≈ 98% sunlit.
Daevin Oey · a simulation built with AI assistance; I designed the model and can walk through every part · see also Rack Fault Lab