Skip to content
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

Parallelize Cardano Transaction prover #1781

Closed
wants to merge 5 commits into from

Conversation

jpraynaud
Copy link
Member

@jpraynaud jpraynaud commented Jun 26, 2024

Content

This PR parallelization of the Cardano transaction prover:

  • The proof computation by the Merkle map
  • The block ranges sub Merkle tree computation

Benchmarks

Screenshot from 2024-07-09 18-29-29

Total Requests Concurrency Transactions/Request Pool (x5): Request/s Pool (x5) + Parallel proof computation: Request/s
10000 500 1 7913.59 7623.6
10000 500 2 4851.96 4144.61
10000 500 3 3515.48 2779.29
10000 500 4 3101.26 2381.42
10000 500 5 2017.03 1658.07
10000 500 6 1832.84 1524.97
10000 500 7 1528.66 1276.15
10000 500 8 1398.67 1168.99
10000 500 9 1165.36 936.44
10000 500 10 1041.9 920.39
1000 100 20 512.33 440.4
1000 100 30 386.91 313.29
1000 100 40 314.65 254.52
1000 100 50 243.02 195.74
1000 100 60 202.51 163.77
1000 100 70 175.14 141
1000 100 80 149.35 124.07
1000 100 90 129.6 96.62
1000 100 100 115.64 102.17

Running on Linux / 8 cores / 64 GB RAM / 2 TB SSD

Pre-submit checklist

  • Branch
    • Tests are provided (if possible)
    • Crates versions are updated (if relevant)
    • CHANGELOG file is updated (if relevant)
    • Commit sequence broadly makes sense
    • Key commits have useful messages
  • PR
    • No clippy warnings in the CI
    • Self-reviewed the diff
    • Useful pull request description
    • Reviewer requested

Issue(s)

Closes #1756

@jpraynaud jpraynaud self-assigned this Jun 26, 2024
Copy link

github-actions bot commented Jun 26, 2024

Test Results

    4 files  ±0     52 suites  ±0   8m 59s ⏱️ +8s
1 145 tests ±0  1 145 ✅ ±0  0 💤 ±0  0 ❌ ±0 
1 311 runs  ±0  1 311 ✅ ±0  0 💤 ±0  0 ❌ ±0 

Results for commit ec6549c. ± Comparison against base commit 640ee4d.

♻️ This comment has been updated with latest results.

Copy link
Collaborator

@sfauvel sfauvel left a comment

Choose a reason for hiding this comment

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

LGTM
Just some proposition to simply code

@jpraynaud jpraynaud force-pushed the jpraynaud/1756-parallelize-cardano-tx-prover branch from 00a49c7 to c72928d Compare July 1, 2024 10:19
@jpraynaud jpraynaud temporarily deployed to testing-sanchonet July 1, 2024 10:26 — with GitHub Actions Inactive
@jpraynaud jpraynaud force-pushed the jpraynaud/1756-parallelize-cardano-tx-prover branch from c72928d to ec6549c Compare July 9, 2024 16:25
@jpraynaud jpraynaud temporarily deployed to testing-sanchonet July 9, 2024 16:32 — with GitHub Actions Inactive
@jpraynaud
Copy link
Member Author

As the parallelization work done in the prover does not improve performances, we will not merge this PR.

@jpraynaud jpraynaud closed this Jul 10, 2024
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.

Optimize Cardano transaction prover performances with parallelization
2 participants