Loading
Loading

Neuron registration trends
Training large language models requires enormous computational resources and infrastructure costs. A single organization cannot access sufficient GPU capacity, and the process typically demands months of specialized engineering to manage distributed training across heterogeneous hardware. Researchers, startups, and independent developers lack affordable pathways to pretrain foundation models at scale.
The IOTA framework distributes model pretraining across a network of independent participants running on commodity GPUs and diverse hardware. Participants operate as miners (compute contributors) or validators (quality checkers). The orchestrator assigns model layers to miners, automatically coordinates data flow between them, and ensures work is performed correctly through spot-checks. Miners compete to process training activations, earning rewards proportional to compute contributed. This eliminates the need for centralized infrastructure and makes large-scale pretraining accessible to distributed teams.
On the Bittensor SN9 network, IOTA currently pretrains a 1.5B parameter Llama-inspired model using data and pipeline parallelism. The system uses direct peer-to-peer activation transfer between miners (via iroh QUIC) to minimize latency and cloud costs, with cryptographic integrity verification at each layer boundary. Validators continuously spot-check miner work using S3-uploaded samples, ensuring training quality across the permissionless network.
Use cases were auto-generated from the GitHub repository and may not reflect the latest changes.
IOTA is an incentivized framework for pretraining large language models (currently 1.5B Llama-inspired) across a distributed network of heterogeneous miners using data and pipeline parallelism. Miners compete to process activations while validators spot-check work; the system employs orchestrator-coordinated P2P activation transfer via iroh QUIC, S3 for weights/samples, and a Butterfly All-Reduce variant for weight synchronization.
IOTA distributes a 1.5B Llama model across miners via 3 layer sections. Orchestrator assigns activations to miners based on layer placement; miners compute forward passes and cache activations using POSIX SharedMemory. Inter-miner activation transfer uses P2P QUIC (iroh) with BLAKE3 integrity checks, bypassing S3 for layer-to-layer communication.
A ReceiverProcess subprocess serves cached activations over QUIC to downstream miners. Layer-0 samples and last-layer targets come from S3; validators spot-check 1% of activations by requesting S3 uploads. Miners periodically upload weights and perform Butterfly All-Reduce merging.
Shared state (metrics, node registry) is synced via the Bridge's /bridge HTTP API using SyncedVariableV2 with LWW/CAS/LOCK concurrency modes.
Miners are assigned layer sections from a 1.5B Llama model split into 3 layers. Each miner processes activations from the previous layer, computes outputs, caches via SharedMemory, and submits to orchestrator with BLAKE3 hashes of input/output tensors. Validators periodically select activations (1% by default via SPOT_CHECK_RATE) and request miners to upload them to S3 for independent verification.
This information was auto-extracted from the GitHub repository and may be incomplete or out of date. Always refer to the subnet's GitHub repository for the latest instructions.
Miners compete on speed (activations/second) while validators ensure correctness; hash chain integrity is maintained across layers.
The sections above were auto-generated from the GitHub repository and may not reflect the latest changes. View repository
Bringing liquid training to the world
FAQs were auto-generated from the GitHub repository and may not reflect the latest changes.
Holder & total-staked metrics as of 2h ago (hourly snapshot)
1.5B model in bfloat16 has ~2GB footprint. P2P activation cache uses POSIX SharedMemory for zero-copy transfer to receiver subprocess.
Validators are lightweight spot-checkers; can run single or multiple instances for scalability. Configurable host/port with automatic port allocation.
Run setup script and select Miner option
bash setup.sh
Configure environment variables (VALIDATOR_HOST, VALIDATOR_PORT, etc.)
# Edit .env file with configuration
Start miner process
bash ./start_miner.sh
Optionally run miner in background with PM2(optional)
pm2 start pm2/miner.config.js
Run setup script and select Validator option
bash setup.sh
Configure environment variables (VALIDATOR_HOST, VALIDATOR_PORT, VALIDATOR_COUNT)
# Edit .env file with configuration
Start validator instance(s) with default settings
bash ./start_validators.sh
Or start multiple validators with custom host/port/count(optional)
bash ./start_validators.sh --host 0.0.0.0 --port 8081 --count 3
Optionally run validator in background with PM2(optional)
pm2 start pm2/validator.config.js