hiero-ledger / hiero-ledger/hiero-consensus-node
Microbenchmarks of transaction execution
- Dominant language
- Java
- Stars
- 406
- Forks
- 226
- Avg merge
- 3d 4h
- Merged PRs (30d)
- 210
Description
Create a suite of microbenchmarks that execute a single transaction end-to-end.
The microbenchmarks must be based on JMH. Each benchmark should measure the execution of exactly one transaction. We need at least one microbenchmark per transaction type. For some transaction types, we will create multiple microbenchmarks with different input parameters (e.g., for a `CryptoTransfer`, we need at least one test each that transfers HBars, fungible tokens, and NFTs).
The following task list is an initial draft that can be modified later:
```[tasklist]
### Tasks
- [ ] https://github.com/hashgraph/hedera-services/issues/15980
- [ ] Extract common functionality of microbenchmark suite
- [ ] Implement remaining microbenchmarks
```
The list of microbenchmarks that must be implemented will be defined shortly.
Contributor guide
Research direction
Start by reviewing issue #15980 and the JMH requirement in this issue. Determine the complete list of transaction types and input variants before implementing the suite. Done means each required transaction type has at least one JMH microbenchmark measuring exactly one end-to-end transaction, with shared functionality extracted.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- performance, testing
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100