Demystifying JAM - Presentation

Demystifying

jam-white.png

Note:
blog.kianenigma.com/posts/tech/demystifying-jam/


Polkadot 1

Note:
Sharding and heterogeneity enabled by the use of WASM.


Heterogeneous Execution Sharding, with Shared Security

Let's break it down:

  1. Execution Sharding
  2. With Shared Security
  3. Heterogeneous

--

Sequential Blockchain

--

Poorly Execution Sharded

--

Execution Sharded with Shared Security

--

Heterogeneous

--

Evolution of Polkadot

... is all about flexible usage of cores


Path of a Parachain Block

--

Path of a Parachain Block

--

Path of a Parachain Block

--

Path of a Parachain Block

--

Path of a Parachain ::: block


Notes:

--

On-chain vs. In-core


In-core, on-chain dualism in execution sharding.

--

Data Availability

Polkadot validators already attest to keeping some data available for a long (few weeks) period of time


JAM

Now you know everything to understand JAM.

--

JAM (0)

Gutting of Polkadot such that the following are directly exposed to developers.

  1. What happens In-core
  2. What happens On-chain
  3. What is placed in Data Availability

Note:

A parachain can only control what happens in-core. It cannot really control what happens on-chain. It also cannot readily add any data to the Data availability layer (well, it can, using remarks, which is a hack)

--

JAM (1)

--

JAM (2)


Removing Opinions

Note:

--

In-core and On-chain

Refine

--

Accumulate

--

JAM (Recap)

Allowing Services to program exactly how they want to use:

  1. In-core execution
  2. On-chain execution
  3. Data availability

Path of a JAM Work Package

--

Path of a JAM Work Package

Path of a JAM Work Package

Path of a JAM Work Package

--

Path of a JAM Work Package

--

Path of a JAM Work Package

JAM


PVM


CoreChains Service

Polkadot Parachains as a JAM Service.


Insights

(personal opinion)

Note:

--

Questions

resources/JAM.png


Appendix


Kernel Update Analogy

Note:

Hardware is what provides compute and bandwidth, and the kernel is part of the OS that moderates the hardware access.
Current Polkadot. A lot of stuff is part of the "Kernel/OS".

--

--

--

Work Item

graph LR 
	subgraph WorkPackage 
		WI1[Work Item 1]
		WI2[Work Item 2]
		WI3[Work Item 3]
	end
	subgraph WorkReport
		WR1[Work Result 1]
		WR2[Work Result 2]
		WR3[Work Result 3]
	end
	
	WI1 --> WR1
	WI2 --> WR2
	WI3 --> WR3

  1. And depending on the context, Work Package, Work Result and Work Report. ↩︎