Skip to content
minanodeBeta release

Requirements

System

What it runs on

Operating system
Linux, x86-64 or ARM64
C library
glibc 2.31 or newer
x86-64 CPU
Intel Broadwell or AMD Zen 1, or newer
Clock
Kept in sync by NTP
Other software
None at run time: the devnet circuits and the dashboard are inside mina. Installing needs the tools below
Disk
5 GB free

The CPU and glibc checks below are for the Linux archives. On macOS or Windows, run the node in Docker instead, as its macOS and Windows section explains. The image brings its own C library, so the glibc check does not apply there.

mina uses two sets of x86-64 instructions, BMI2 and ADX. On an older CPU that lacks either, it stops with an illegal instruction error. This prints both names on a CPU that has them:

grep -o -w -E 'bmi2|adx' /proc/cpuinfo | sort -u

Check your glibc version on the first line of this output:

ldd --version

Memory

Memory it uses

Devnet full node, x86_64
About 360 to 380 MiB over 9 hours; peak 644 MiB
Mainnet full node, x86_64
About 1.2 GiB over 9 hours; peak 2.6 GiB
Devnet block producer
About 1.3 GiB over 9 hours; peak 2.7 GiB, including the block prover
Devnet node with SNARK worker
About 2.0 to 2.2 GiB over 9 hours; peak 2.6 GiB
Raspberry Pi 4, 4 GB, ARM64
Devnet full node, two 3-hour runs: steady mean 341 and 344 MiB, steady p95 364 and 368 MiB; peak 570 and 652 MiB while catching up
Apple M4, Docker, ARM64
Devnet full node over 10 minutes synced: median 322 MiB, peak 370 MiB. Block producer: 1.14 to 1.20 GiB. SNARK worker: 1.05 GiB, 1.80 GiB once it loads the zkApp provers

Suggested machine

Full node
1 core and 2 GiB RAM to try; 2 cores and 4 GiB suggested
SNARK worker
4 cores and 8 GiB RAM to try; 8 cores and 16 GiB suggested
Block producer
4 cores and 8 GiB RAM to try; 8 cores and 16 GiB suggested

The x86_64 rows are 0.20.0 nodes on 27 and 28 October 2026: the range of RSS over 9 hours of running, and the peak, the process's high-water mark since it started, which includes restoring its saved chain. The ARM64 rows are shorter runs. The Pi 4 rows give each run's mean and 95th percentile of RSS sampled every 30 seconds, from 30 minutes after sync to the end of the run. The Apple M4 rows are docker stats samples taken every 10 seconds, the producer and worker ones as the range seen. A block producer must also prove each block within its 90-second slot, so a faster CPU gives it more margin.

Mina uses the jemalloc allocator on x86-64 and ARM64. To override its options, set _RJEM_MALLOC_CONF before starting Mina. For example:

export _RJEM_MALLOC_CONF='narenas:8'

Disk

A synced devnet node's data measured 237 MB: 132 MB of saved chain state, 70 MB of ledger accounts and 29 MB of proof cache. Logs take up to 200 MiB more. 5 GB free leaves room for growth and upgrades.

Tools to install it

Downloading and checking a release archive needs:

  • curl and tar;
  • sha256sum, from GNU coreutils;
  • OpenSSH 8.2 or newer, for ssh-keygen -Y verify.

Docker needs a working Docker Engine or Docker Desktop that your user can run. Its Compose section also needs the Compose plugin (docker compose) and curl.