Skip to main content

Prerequisites

Running a BlockZero validator has higher requirements than running a miner. Validators must be online continuously, hold the full model, and score every miner submission in each cycle.

Stake Requirement

Validators must have sufficient TAO staked to be considered active on the subnet. Check the current minimum stake:

btcli subnet info --netuid <BlockZero_UID>
# Look for: min_allowed_weights or similar stake requirements

Validators with more stake have more influence in inter-validator merging and earn a higher share of validator emissions.

Server Requirements

Unlike miners, validators should run on a dedicated server (not a consumer desktop). Validators need:

  • 24/7 uptime — missing evaluation windows reduces your influence in consensus and can result in deregistration
  • Reliable network — validators serve model files to miners; high uptime and bandwidth are essential
  • Open port for miner connections (default: 8080 or 443)

Hardware Requirements

ComponentMinimumRecommended
GPU VRAM48GB (A6000)48GB (A6000)
System RAM64GB128GB
Storage500GB NVMe2TB NVMe
Network1Gbps10Gbps

GPU compatibility: NVIDIA A6000 (48GB) is the reference hardware for validators. Other GPUs with 48GB+ VRAM will also work.

Storage requirement explanation: The full model plus per-miner checkpoints can add up quickly. Size your storage accordingly.

Software Requirements

Same as miners:

  • Python 3.10+
  • CUDA 12.x
  • Git and pip
  • Bittensor installed

Additionally:

  • fastapi and uvicorn — for the model distribution server (installed via pip install -e .)

Networking

The validator runs an HTTP server that miners connect to for model downloads and checkpoint submissions.

  • Open port 8080 (or your configured server_port) to inbound connections
  • If behind NAT, configure port forwarding
  • TLS termination is recommended for production deployments (use a reverse proxy like nginx)

Bittensor Validator Registration

Register your hotkey as a validator on the BlockZero subnet:

btcli subnet register --wallet.name my-wallet --wallet.hotkey my-validator-hotkey --netuid <BlockZero_UID>

For validator-level stake influence, you may also need to call become_delegate and have TAO delegated to your hotkey — see Bittensor documentation.

Checklist

  • Sufficient TAO stake for validator status
  • Dedicated server with 24/7 uptime
  • GPU with ≥48GB VRAM (A6000 or equivalent)
  • 64GB+ system RAM
  • 500GB+ storage for model + checkpoint cache
  • Port 8080 open inbound
  • Python 3.10+, CUDA 12.x installed
  • Validator hotkey registered on BlockZero subnet