Queried by: minersvalidatorsdevelopersanalytics
The Big Picture
Even during low demand, difficulty won't drop below MinDifficulty. This maintains a baseline computational barrier to prevent spam registration via trivially easy POW.
Why This Matters
What's the easiest POW can get? MinDifficulty. Even during quiet periods, you'll need to solve at least this level of computation.
Example Scenario
Query MinDifficulty(netuid=1) returns the difficulty floor. POW will never be easier than this, ensuring minimum computational commitment.
Common Questions
- Why have a minimum?
- Prevents spam. Without a floor, POW during quiet times would be trivially easy, enabling cheap mass registration attacks.
- How low does difficulty actually go?
- After sustained low demand, difficulty approaches MinDifficulty. Check current Difficulty vs MinDifficulty to see how close you are.
Use Cases
- Check best-case POW requirements
- Plan hardware during low-demand periods
- Research registration economics
- Design subnet difficulty parameters
- Build difficulty displays with bounds
Purpose & Usage
Purpose
Floor on difficulty - ensures minimum computational barrier.
Common Query Patterns
- Query by netuid
- Check easiest POW requirements
- Plan POW registration
Query Keys
| # | Name | Type | Description |
|---|---|---|---|
| 1 | key1 | u16 | key1 (u16) |
Stored Value
Relationships
Modified By
Related Events
Code Examples
import { ApiPromise, WsProvider } from "@polkadot/api";
import { stringCamelCase } from "@polkadot/util";
const provider = new WsProvider("wss://entrypoint-finney.opentensor.ai:443");
const api = await ApiPromise.create({ provider });
// Query MinDifficulty storage
const key1 = 0;
const result = await api.query
[stringCamelCase("SubtensorModule")]
[stringCamelCase("MinDifficulty")](
key1
);
console.log("MinDifficulty:", result.toHuman());Runtime Info
View Source- Pallet
- SubtensorModule
- Storage Kind
- Map
- First Version
- v101
- Current Version
- v393