/
Fast sync optimisation

Fast sync optimisation

This page is a work in progress

Environment setup

Hardware

AWS i3.xlarge

Deployment

TODO add Ansible scripts used to run this tests

Testing process

Three distinct runs of about 32478 imports (1 import = 200 blocks) → took between 5 hours 30 minutes and 6 hours. 

Collected data

  • Median response time per 200 blocks import
  • System metrics

    • CPU
    • Memory
    • Disk IO
    • Network IO
  • CPU Profiling
  • Memory Profiling

Initial reference results


Global elapsed time

Number of imports (1 import = 200 blocks)

Average Response time import 200 blocks (ms)

Median response time import 200 blocks (ms)

90th percentile response time import 200 blocks (ms)

95th percentile response time import 200 blocks (ms)

Maximum response time import 200 blocks (ms)

Execution #1

5 hours, 55 minutes

32478

632

294

1450

2210

27300

Execution #2

5 hours, 39 minutes

32674

611

308

1350

2020

18300

Execution #3

5 hours, 48 minutes

32770

616

325

1320

2010

27000

Median response time per 200 blocks import

Execution #1

Execution #2

Execution #3


Optimisation attempts

Attempt 1: Execute World Sate download before block Imports

Expected effect

TODO

Results

TODO

Decision

TODO

Related content

2024 - Besu Performance Improvements since the Merge
2024 - Besu Performance Improvements since the Merge
More like this
QBFT Performance
QBFT Performance
Read with this
2020-12-02 Meeting notes
2020-12-02 Meeting notes
More like this
Memory usage investigations on 23.7.3-RC
Memory usage investigations on 23.7.3-RC
Read with this
2024-01-09 Aries Cloud Agent - Python Users Group Community Meeting
2024-01-09 Aries Cloud Agent - Python Users Group Community Meeting
More like this
Optimising the pipelines using Github Actions for Caliper and Caliper-Benchmarks
Optimising the pipelines using Github Actions for Caliper and Caliper-Benchmarks
More like this