Performance analysis and Benchmarking of Besu using Caliper with complex workloads

Project TitlePerformance analysis and Benchmarking of Besu using Caliper with complex workloads
Status

COMPLETED

Primary Focus

CODING  RESEARCH

Description 

The objective of this project is to perform a performance and benchmarking analysis of BESU, a Hyperledger project, in private networks (QBFT, IBFT, CLIQUE) using Hyperledger Caliper. This project aims to identify the strengths and weaknesses of BESU in terms of maximum transactions per second, latency, computation power, hard disk space, etc. Additionally, this project aims to add support for more complex and well-known workloads like ERC20, ERC721 in Caliper, which are used by general Ethereum users. This project will provide valuable insights into the performance of BESU and will help developers optimise it for better performance.

Additional Information

Hyperledger Besu: https://www.hyperledger.org/use/besu

Hyperledger Caliper: https://www.hyperledger.org/use/caliper

ERC20: https://eips.ethereum.org/EIPS/eip-20

ERC721: https://eips.ethereum.org/EIPS/eip-721

Learning Objectives

Through this project, the mentee will:

  • Develop skills in benchmarking and performance analysis of blockchain networks
  • Gain experience in working with Hyperledger Besu and Hyperledger Caliper
  • Learn to add support for new workloads in Caliper
  • Improve their programming skills by working on a real-world open-source project
  • Learn to write technical research reports and documentation.

Expected Outcome

The expected deliverables of this project are:

  • A detailed report on the performance of BESU in private networks (QBFT, IBFT, CLIQUE)
  • A set of benchmarks for BESU in private network with different configurations
  • Support for ERC20, ERC721, etc workloads in Hyperledger Caliper
  • Documentation on how to use the benchmarking tool and the new workloads.

Relation to Hyperledger 

This mentorship is related to Hyperledger Besu and Hyperledger Caliper.

Mentee Skills

The mentee should have:

  • Strong programming skills in Java and/or JavaScript
  • Good understanding of blockchain technology
  • Familiarity with Hyperledger projects is a plus
  • Experience with benchmarking and performance analysis is a plus.

Mentee Open Source Contribution Experience

The mentee should have experience in contributing to open source software projects, preferably in the blockchain domain. Evidence of such contributions can be provided through links to pull requests, commits, or other relevant contributions to open source repositories.

Future plans

The project's outcome will provide valuable insights into the performance of BESU and will lead to improvements in the blockchain network. It will also help in finding the bottlenecks in case of any performance degradation. The momentum of the project can be continued by contributing the improvements back to the Hyperledger Besu and Hyperledger Caliper communities and exploring further areas of research in blockchain performance analysis.

Mentor(s) Names and Contact Info

Nischal Sharma , George Tebrean
nischal@web3labs.com, george@web3labs.com
LFID: nicks1106
Web3 Labs