0

Now that Baking Bad released Tezos on tezos: smart rollup enabled with Michelson VM - I wonder if it is possible to achieve with this Michelson rollup 1 million TPS? Or are there certain limitations in this kernel design that makes it not possible?

I imagine one usecase for example a game with many interactions where many users play at once. Instead of waiting for blocktimes confirmation this would allow smooth playing for thousands of users.

Is a showcase test possible where you interact inside the rollup and send from a hundred or thousand tezos addresses as many transactions as possible at the same time? Of course everything happening in the Michelson rollup.

1 Answer 1

1

It won't be possible currently to hit such a high TPS on a single smart rollup, for a few reasons (not just limited to tezos-on-tezos).

Signature verification

Signature verification takes time. For example, if using Ed25519 signatures (tz1 addresses), then we've observed that 2500-3000 signatures can be verified per second. This may be higher or lower depending on exact hardware used.

Other signature schemes may be cheaper to verify, but may have a trade-off in terms of security.

Of course, there may be possible use-cases of rollups that don't require cryptographic signatures, but then the notion of 'transaction' would likely be more blurry.

Data availability

The data requirements of 1M TPS is very high - if each transfer is only 1 byte, then that's already 15MB of data per block that needs to go through the system, excluding signatures. (One Ed25519 signature per transaction would result in almost 1GB of data per block, without the data for transfers!)

Such high data throughput is out the range of what could reasonably be handled by either the rollup, or its data availability solution in use.

Either way, this data is potentially orders of magnitude higher than what could be supported by Layer 1.

Low latency

This is not connected to throughput, per se, but is definitely important from a user's point of view.

By default, the latency of the rollup is tied to the latency of L1. In order to achieve smooth playing, as you describe, the rollup may need to use a sequencer. If all transactions are submitted through the sequencer, then the sequencer can predict the result of operations, and therefore provide a near-instant view of what the state will be.

This potentially has drawbacks - for example reducing decentralisation - but the tradeoffs may well be worth it in certain use-cases.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.