Object Migration Oracle (OMO)

OMO is a system that analzes interaction between objects in a sharded blockchains and performs smart cross-shard migrations to maximize the global TPS.

Object Migration Oracle (OMO)

Created At

Scaling Ethereum

Project Description

Within this project, we've built a data extraction tool that gets transaction from Ethereum together with all the accounts, who's state is being modified by this transaction. We then built a Python simulator to verify the performance implications of replaying Ethereum transactions on a sharded environment. We show that our policy of "smart account migration" can increase the global TPS of a sharded environment by more than 500%. Finally, we verify the behavior of our policy using a real-world deployment using chainspace - a sharded UTXO blockchain.

How it's Made

The project is written entirely in Ethereum. We spent a lot of time trying to extract accounts that were modified by each transaction. Surprisingly, we discovered transactions modifying up to 60 accounts at once - we haven't seen that being done before. Our simulator is modular allowing other people to write their own policies and quickly test their performance. When designing the policy, we also spent a lot of time reading about sharded Ethereum to make sure that only use information available on the beacon chain.

background image mobile

Join the mailing list

Get the latest news and updates