Skip to content

Add performance and performance-rpc profiles #8560

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 8 commits into from
Apr 28, 2025

Conversation

siladu
Copy link
Contributor

@siladu siladu commented Apr 17, 2025

performance.toml:

Xplugin-rocksdb-high-spec-enabled=true
Xbonsai-parallel-tx-processing-enabled=true

performance-rpc.toml:

Xplugin-rocksdb-high-spec-enabled=true
cache-last-blocks=2048
$ besu --profile=PERFORMANCE
$ besu --profile=PERFORMANCE_RPC

2025-04-17 20:26:30.786+10:00 | main | INFO  | Besu | Starting Besu
2025-04-17 20:26:31.321+10:00 | main | WARN  | Besu | Engine API authentication enabled without key file. Expect ephemeral jwt.hex file in datadir
2025-04-17 20:26:31.324+10:00 | main | INFO  | Besu | Connecting to 0 static nodes.
2025-04-17 20:26:31.396+10:00 | main | INFO  | Besu |
####################################################################################################
#                                                                                                  #
# Besu version 25.4-develop-41a091d                                                                #
#                                                                                                  #
# Configuration:                                                                                   #
# Network: Mainnet                                                                                 #
# Network Id: 1                                                                                    #
# Profile: PERFORMANCE_RPC                                                                         #
# Data storage: Bonsai                                                                             #
# Sync mode: Snap                                                                                  #
# Sync min peers: 5                                                                                #
# Engine APIs: ENGINE,ETH                                                                          #
# Engine port: 8551                                                                                #
# Engine JWT: /tmp/besu/jwt.hex                                                                    #
# Using LAYERED transaction pool implementation                                                    #
# Experimental high spec configuration enabled                                                     #
# Using STACKED worldstate update mode                                                             #
# Limit trie logs enabled: retention: 512; prune window: 5000                                      #
#                                                                                                  #
# Host:                                                                                            #
# Java: openjdk-java-21                                                                            #
# Maximum heap size: 8.00 GB                                                                       #
# OS: osx-aarch_64                                                                                 #
# Total memory: 32.00 GB                                                                           #
# CPU cores: 10                                                                                    #
#                                                                                                  #
# Plugin Registration Summary:                                                                     #
# No plugins have been registered.                                                                 #
# TOTAL = 0 of 0 plugins successfully registered.                                                  #
#                                                                                                  #
####################################################################################################

Signed-off-by: Simon Dudley <[email protected]>
@ahamlat
Copy link
Contributor

ahamlat commented Apr 17, 2025

This looks good for me, we can add another one for RPC, like performance-rpc with only Xplugin-rocksdb-high-spec-enabled=true and cache-last-blocks=2048. Parallel transaction execution will use threads that can be used for RPC requests.

siladu and others added 2 commits April 19, 2025 20:14
Signed-off-by: Simon Dudley <[email protected]>
Co-authored-by: Ameziane H. <[email protected]>
Use real besuPluginContext to ensure rocksdb CLI options are registered

Signed-off-by: Simon Dudley <[email protected]>
@siladu siladu force-pushed the performance-profile branch from 11aedcf to d4d6575 Compare April 19, 2025 11:39
@siladu siladu changed the title Add performance profile Add performance and performance-rpc profiles Apr 19, 2025
@siladu siladu marked this pull request as ready for review April 19, 2025 11:44
siladu added 3 commits April 19, 2025 21:45
Signed-off-by: Simon Dudley <[email protected]>
Signed-off-by: Simon Dudley <[email protected]>
Copy link
Contributor

@ahamlat ahamlat left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@siladu siladu enabled auto-merge (squash) April 28, 2025 05:46
@siladu siladu merged commit cff5dad into hyperledger:main Apr 28, 2025
43 checks passed
@siladu siladu deleted the performance-profile branch April 29, 2025 04:46
@macfarla macfarla added the doc-change-required Indicates an issue or PR that requires doc to be updated label Apr 30, 2025
@alexandratran alexandratran removed the doc-change-required Indicates an issue or PR that requires doc to be updated label May 19, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants