From e8cb7130fb61dc9e0971a30c4420a358ec6071b9 Mon Sep 17 00:00:00 2001 From: kp2pml30 Date: Thu, 17 Sep 2026 19:22:11 +0900 Subject: [PATCH] docs: recommend musl and 128 GB swap for validators --- pages/validators/setup-guide.mdx | 5 ++++- pages/validators/system-requirements.mdx | 26 +++++++++++++++++++++++- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/pages/validators/setup-guide.mdx b/pages/validators/setup-guide.mdx index f1204d63..c5d836b1 100644 --- a/pages/validators/setup-guide.mdx +++ b/pages/validators/setup-guide.mdx @@ -17,14 +17,17 @@ For a deeper understanding of how staking works in GenLayer, see the [Staking do | Resource | Requirement | |----------|-------------| | **Memory** | 16 GB RAM | +| **Swap** | 128 GB recommended, in addition to RAM | | **CPU** | 8-core (AMD64 only) | -| **Disk** | 128 GB SSD/NVMe | +| **Disk** | 128 GB SSD/NVMe (excluding swap) | | **Network** | 100 Mbps | | **OS** | 64-bit Linux | | **Software** | Docker, Python 3 (with pip and venv) | GPU not required unless running LLMs locally. See [detailed requirements](/validators/system-requirements) for more info. +We recommend 128 GB of swap as a conservative starting point while transaction throughput and memory demand are not yet known. On Linux, we also recommend [installing musl libc](/validators/system-requirements#musl-libc-recommended-on-linux) for GenVM's default ELF interpreter + ## Choose Your Setup Method GenLayer offers two ways to set up your validator node. Both methods result in the same configuration—choose the one that fits your workflow. diff --git a/pages/validators/system-requirements.mdx b/pages/validators/system-requirements.mdx index c8f56def..aff943b8 100644 --- a/pages/validators/system-requirements.mdx +++ b/pages/validators/system-requirements.mdx @@ -14,6 +14,12 @@ System Requirements for a GenLayer validator node are the **initial** recommende - GenLayer's _genvm_ can spawn multiple Sub-VMs for contract calls and non-deterministic blocks. - Each Sub-VM can consume up to ~4 GB of RAM for storage. +## Swap + +- **Recommended:** 128 GB of swap, in addition to the recommended RAM +- **Why:** Transaction throughput and the resulting memory demand are not yet known, so size swap conservatively to provide headroom for memory spikes +- Monitor RAM and swap usage as network load becomes clearer; sustained swapping can slow transaction execution + ## CPU - **Recommended:** Modern multi-core processor with at least 8 cores/16 threads @@ -25,7 +31,7 @@ System Requirements for a GenLayer validator node are the **initial** recommende ## Storage -- **Recommended Disk Space:** 128 GB+ +- **Recommended Disk Space:** 128 GB+ (excluding swap) - **Preferred Type:** SSD or NVMe (M.2) ## Network @@ -49,3 +55,21 @@ System Requirements for a GenLayer validator node are the **initial** recommende - Operating System - 64-bit Linux (Ubuntu, Debian, CentOS, etc.) - `docker` - for running the WebDriver container - `python3`, `python3-pip` and `python3-venv` for GenVM setup + +### musl libc (Recommended on Linux) + +We recommend installing musl libc on Linux so GenVM binaries can use their default ELF interpreter path. On Ubuntu or Debian: + +```bash copy +sudo apt-get update +sudo apt-get install -y musl +``` + +For other Linux distributions, install the musl runtime package using your distribution's package manager. Check that the interpreter for your architecture exists and is executable: + +| Architecture | Default ELF Interpreter Path | +|--------------|------------------------------| +| AMD64 (`x86_64`) | `/lib/ld-musl-x86_64.so.1` | +| ARM64 (`aarch64`) | `/lib/ld-musl-aarch64.so.1` | + +The AArch64 path is provided as a GenVM reference; validator nodes currently support AMD64 only