RegistrationPerIntervalSet

Event Re-added v101 → v219, v233 → v265, v273 → v277, v290 → current #13

Emitted when target registrations per interval is changed.

View events on chain
Useful for: minersvalidatorssubnet ownersanalyticsdevelopers

The Big Picture

Subnets use difficulty adjustment to control registration pace. This parameter sets the TARGET - how many registrations per interval is 'ideal'. Too many registrations? Difficulty increases. Too few? Difficulty decreases. This event changes the target, affecting how aggressively the subnet controls its growth rate.

Why This Matters

The target affects how hard it is to register via PoW. A higher target means the subnet wants more registrations, so difficulty may decrease. A lower target means slower desired growth, so difficulty may increase. Understanding this helps you time your registration attempts.

Example Scenario

Subnet 4 was growing too fast, overwhelming validators. The owner lowers target registrations from 10 to 3 per interval. RegistrationPerIntervalSet fires. The difficulty adjustment will now push toward only 3 registrations per interval instead of 10 - expect rising difficulty.

Common Questions

What's an 'interval' in this context?
Check the subnet's AdjustmentInterval parameter. It defines how many blocks between difficulty adjustments. The target is registrations per that interval.
Does this affect burn registration?
Burn costs also adjust (typically), so yes. Higher target = potentially lower burn cost. Lower target = potentially higher burn cost.
What's a typical target value?
Varies widely by subnet. Popular subnets might target low (slow, controlled growth). New subnets might target high (rapid onboarding). Check specific subnet settings.

Use Cases

  • Track registration rate policies
  • Predict difficulty adjustment behavior
  • Monitor subnet growth rate controls
  • Build registration timing optimization tools

How to Use This Event

  • Monitor target changes to predict difficulty trends
  • Track growth rate policies across subnets
  • Build difficulty prediction models

From Chain Metadata

registration per interval is set for a subnet.

Triggers

Preconditions

  • Caller has admin/sudo privileges

Effects

Postconditions

  • TargetRegistrationsPerInterval updated

Side Effects

  • Affects difficulty adjustment algorithm

Event Data

#NameTypeDescription
0
arg0
u16 Event field #0 (u16)
1
arg1
u16 Event field #1 (u16)

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 });

// Subscribe to RegistrationPerIntervalSet events
api.query.system.events((events) => {
  events
    .filter(({ event }) =>
      event.section === stringCamelCase("SubtensorModule") &&
      event.method === "RegistrationPerIntervalSet"
    )
    .forEach(({ event }) => {
      console.log("RegistrationPerIntervalSet:", event.data.toHuman());
    });
});

Version History

v101 block 1 2 args
v233 block 4,920,350 2 args
v273 block 5,659,032 2 args
v290 block 5,947,548 2 args Current

Runtime Info

View Source
Pallet Index
7
Event Index
13
First Version
v101
Current Version
v393