Loading
Loading
Neuron registration trends
Subnet validators across decentralized networks face a fundamental infrastructure challenge: validating computationally intensive tasks requires access to reliable GPU resources, but centralized cloud providers create single points of failure and dependency. Additionally, validators struggle to verify that miners actually performed work honestly without running the computation themselves, which defeats the purpose of decentralization. ComputeHorde solves this by creating a decentralized network of GPU-equipped miners whose work is cryptographically verified through a system of trusted validators. Miners compete to provide compute services fairly, with payment proportional to actual work performed, while validators confirm results using a separate trusted instance before accepting miner compensation. This network approach eliminates centralized infrastructure dependency while maintaining the ability to verify computational integrity across thousands of validators and miners through economic incentives and collateral-based trust mechanisms.
Use cases were auto-generated from the GitHub repository and may not reflect the latest changes.
ComputeHorde (Subnet 12) is a specialized Bittensor subnet that provides decentralized, scalable GPU computing power to validators across the Bittensor network. It transforms untrusted GPUs from miners into trusted compute resources through innovative validation mechanisms, enabling subnet validators to perform large-scale computations without relying on centralized cloud services. The subnet uses hardware classes (currently A6000, A100 planned), collateral-based trust for organic jobs, and a sophisticated incentive mechanism that fairly distributes work and rewards across miners and validators.
ComputeHorde comprises four main components: (1) Facilitator acts as a gateway for organic requests from other subnet validators; (2) Validator receives requests via Facilitator, distributes tasks to miners, and evaluates results using a separate Trusted Miner (an unregistered GPU miner configured only to accept validator tasks) to pre-run validation tasks and establish expected results; (3) Miner accepts job requests from validators and manages executors (spawned instances performing individual containerized tasks) with optional custom ExecutorManager for optimization; (4) Executor runs in restricted environments with limited network access for task communication, docker image downloads, and job data handling. Each miner can spawn multiple executors forming a 'horde' with assigned hardware classes, removing the 256 UID limit. Miners can optionally deposit collateral to access paid organic jobs and employ a DDoS shield for protection.
The SDK enables other subnet validators to submit jobs, perform cross-validation, and integrate fallback cloud services.
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.
The scoring mechanism incentivizes miners to perform organic jobs while maintaining fairness. Each block mints executor-seconds per miner-validator-executorClass tuple. The allowance pool recalculates every block as executor counts and validator stakes change.
When starting a job, a validator spends specific allowance blocks to cover runtime. During scoring, validators verify blocks were fresh, unspent, and sufficient; overspending voids incentives. If a miner lowers executor count, tied allowance blocks are invalidated.
Validators score all miners' work globally regardless of who paid, as long as jobs fit valid allowance blocks. The dancing bonus splits each coldkey's score across its hotkeys, with the declared main hotkey taking the largest share. Changing the main hotkey from the previous cycle triggers a 10% boost on the coldkey before splitting.
Each hardware class has a configurable weight that adjusts final scores based on network demand.
The sections above were auto-generated from the GitHub repository and may not reflect the latest changes. View repository
FAQs were auto-generated from the GitHub repository and may not reflect the latest changes.
Holder & total-staked metrics as of 3h ago (hourly snapshot)
At least 500GB of shared disk space recommended for /tmp to reliably handle docker images and job data. GPU is required to run executors. A6000 is currently the supported GPU class.
Validator consists of three components: trusted miner (requires A6000 GPU for cross-validation), two S3 buckets for sharing LLM data, and a standard non-GPU validator machine for regular validating and weight-setting. Installation performed from local machine with wallet files via SSH.
Run installation script from local machine (where wallet files are) to set up miner on remote Ubuntu Server. Replace SSH_DESTINATION with server connection info (e.g., [email protected]) and HOTKEY_PATH with hotkey path (e.g., ~/.bittensor/wallets/my-wallet/hotkeys/my-hotkey)
curl -sSfL https://github.com/backend-developers-ltd/ComputeHorde/raw/master/install_miner.sh | bash -s - production SSH_DESTINATION HOTKEY_PATH
Start the miner with Docker Compose after installation script completes
docker compose up -d
Verify miner is reachable from another machine. Obtain ADDRESS and PORT from metagraph. Should return HTTP/1.1 200 OK
curl {ADDRESS}:{PORT}/admin/login/ -iDeposit collateral to become eligible for organic jobs with higher rewards(optional)
Optionally deposit collateral with validators via https://github.com/bactensor/collateral-contracts#recommended-miner-integration-guide-as-used-by-computehorde
Enable optional DDoS protection to shield from denial-of-service attacks(optional)
Optionally run DDoS shield Docker image from https://github.com/bactensor/bt-ddos-shield#running-shield-on-server-miner-side
Customize miner configuration if needed. Consider implementing custom ExecutorManager for production use with multiple executors(optional)
See Miner runner README (miner/envs/runner/README.md) for configuration changes
Prepare a machine with A6000 GPU to serve as trusted miner for cross-validation of organic tasks
Set up trusted miner following validator#setting-up-a-trusted-miner-for-cross-validation
Create S3 buckets to store and share LLM data (lots of small text files) between components
Set up two S3 buckets for sharing LLM data
Set environment variables on local machine (where wallet files are) with trusted miner connection info
export TRUSTED_MINER_ADDRESS=... && export TRUSTED_MINER_PORT=...
Run installation script from local machine to set up validator on remote Linux machine. Replace SSH_DESTINATION with server connection info and HOTKEY_PATH with hotkey path
curl -sSfL https://github.com/backend-developers-ltd/ComputeHorde/raw/master/install_validator.sh | bash -s - SSH_DESTINATION HOTKEY_PATH
Start the validator with Docker Compose after installation completes
docker compose down --remove-orphans && docker compose up -d
Configure validator parameters if deviating from defaults(optional)
See Validator runner README (validator/envs/runner/README.md) for configuration details
Learn how to trigger jobs from validator if needed(optional)
See Validator README (validator/docs/validator.md) for triggering jobs
Deploy collateral contract integration to enable slashing of dishonest miners and filter by deposited funds(optional)
Optionally integrate with collateral contract from https://github.com/bactensor/collateral-contracts#recommended-validator-integration-guide-as-used-by-computehorde