MaxDifficulty

Storage Map v101 → current

Maximum POW difficulty .

Explore chain
Queried by: minersvalidatorsdevelopersanalytics

The Big Picture

Difficulty adjusts based on demand but won't exceed MaxDifficulty. This ensures POW registration remains feasible even during extreme demand. Without a cap, difficulty could become computationally impossible.

Why This Matters

How hard can POW get? MaxDifficulty. Beyond this, the system stops increasing difficulty regardless of demand.

Example Scenario

Query MaxDifficulty(netuid=1) returns the difficulty ceiling. Even during sustained high demand, POW won't require more computation than this.

Common Questions

What happens at max difficulty?
Difficulty stays at the cap. If demand remains high, consider burn registration instead - it might be more practical.
How does this relate to burn?
Difficulty and burn both adjust to demand. At maxes, one might be better than the other depending on your resources (compute vs TAO).

Use Cases

  • Understand worst-case POW requirements
  • Plan hardware for registration
  • Research registration economics
  • Design subnet difficulty parameters
  • Build difficulty displays with bounds

Purpose & Usage

Purpose

Cap on difficulty - prevents computationally impossible registration.

Common Query Patterns

  • Query by netuid
  • Plan POW registration strategy
  • Understand difficulty ceiling

Query Keys

#NameTypeDescription
1
key1
u16 key1 (u16)

Stored Value

Value in RAO (÷10⁹ for TAO)

RAO -> TAO (/ 10^9)

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 MaxDifficulty storage
const key1 = 0;

const result = await api.query
  [stringCamelCase("SubtensorModule")]
  [stringCamelCase("MaxDifficulty")](
  key1
);

console.log("MaxDifficulty:", result.toHuman());

Runtime Info

View Source
Pallet
SubtensorModule
Storage Kind
Map
First Version
v101
Current Version
v393