Skip to content

InPlusLab/Meepo

Repository files navigation

Meepo (Meepo-OpenEthereum)

Meepo implementation on OpenEthereum.

MEEPO = Multiple Execution Environments Per Organization. (It is also a legendary hero who can split himself, each one acting independently but relying on together, just like the shards.)

Since Meepo-Geth (Golang) is unable to be open-source because of the copyright, our community provides another implementation (Rust) based on the published paper.

Build and Run (Linux)

  1. Install Rust v1.51
$ curl https://sh.rustup.rs -sSf | sh
$ rustup override set 1.51
  1. Build Meepo-OpenEthereum
$ git clone http://github.com/InPlusLab/Meepo/
$ cd Meepo/build/
$ ./debug.sh # or ./release.sh
  1. Run Node0 (Shard0)
$ cd Meepo/build/
$ ./initrun0.sh
  1. Run Node1 (Shard1)
$ cd Meepo/build/
$ ./initrun1.sh
  1. Try anything you want via Web3.js or other Ethereum toolchain. As for benchmark, please see the following.

Benchmark

More benchmark scripts, logs, and analytic results can be found in this repo: MeepoBenchmark.

image

(32x4=128 machines in maximum, each machine is equipped with 4 vCPU, 32 GiB memory, and 894 GiB NVME disk, 102400 accounts per shard, 100000000+ transactions to an ERC20-like contract.)

About

Meepo implementation on OpenEthereum.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages