Skip to content
/ Meepo Public
forked from InPlusLab/Meepo

Meepo implementation on OpenEthereum.

License

Notifications You must be signed in to change notification settings

tczpl/Meepo

This branch is 1 commit behind InPlusLab/Meepo:main.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

488f0f1 · Feb 9, 2022
Jan 8, 2021
Jun 28, 2021
Jan 6, 2022
Jan 26, 2022
Jan 24, 2022
Feb 24, 2021
Mar 12, 2021
May 23, 2017
Feb 13, 2018
Aug 7, 2020
Jan 26, 2022
Jan 14, 2021
Dec 7, 2021
Jan 6, 2022
Dec 7, 2021
Nov 24, 2015
Feb 9, 2022
Sep 22, 2020

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.)

This is an implmentation based on the conference paper: P. Zheng, Q. Xu, Z. Zheng, Z. Zhou, Y. Yan and H. Zhang, "Meepo: Sharded Consortium Blockchain," 2021 IEEE 37th International Conference on Data Engineering (ICDE), 2021, pp. 1847-1852, doi: 10.1109/ICDE51399.2021.00165.

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

  • Rust 99.5%
  • Other 0.5%