Crate pallet_broker

source ·
Expand description

Pallet Broker

Brokerage tool for managing Polkadot Core scheduling.

Properly described in RFC-0001 Agile Coretime.

Implemnentation Specifics

Core Mask Bits

This is 1/80th of a Polkadot Core per timeslice. Assuming timeslices are 80 blocks, then this indicates usage of a single core one time over a timeslice.

The Sale

					1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7
--------------------------------------------------------
< interlude  >
			  <                   sale                 >
							... of which ...
			  <  descending-price   ><   fixed-price   >
														| <-------\
price fixed, unsold assigned to instapool, system cores reserved -/

Re-exports

Modules

  • The pallet module in each FRAME pallet hosts the most important items needed to construct this pallet.
  • Autogenerated weights for pallet_broker

Structs

  • The identity of a possible Core workload renewal.
  • A record of an allowed renewal.
  • Configuration of this pallet.
  • The record body of a Region which was contributed to the Instantaneous Coretime Pool. This helps with making pro rata payments to contributors.
  • A per-timeslice bookkeeping record for tracking Instantaneous Coretime Pool activity and making proper payments to contributors.
  • Information on a single legacy lease.
  • Simple implementation of AdaptPrice giving a monotonic leadin and a linear price change based on cores sold.
  • A record of flux in the InstaPool.
  • Self-describing identity for a Region of Bulk Coretime.
  • The rest of the information describing a Region.
  • The status of a Bulk Coretime Sale.
  • An distinct item which can be scheduled on a Polkadot Core.
  • General status of the system.

Enums

  • How much of a core has been assigned or, if completely assigned, the workload itself.
  • An element to which a core can be assigned.
  • Whether a core assignment is revokable or not.

Constants

Traits

  • Type for determining how to set price.
  • Type able to accept Coretime scheduling instructions and provide certain usage information. Generally implemented by the Relay-chain or some means of communicating with it.

Type Definitions