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

workbench: UTxO scaling + LMDB benchmarks, improved Nomad cluster handling #5779

Merged
merged 15 commits into from
Apr 16, 2024

Conversation

mgmeier
Copy link
Contributor

@mgmeier mgmeier commented Apr 12, 2024

Description

This PR brings a set of new features to workbench and the Nomad backend, enabling UTxO scaling benchmarks and more.

  • adds capability to benchmark UTxO-HD's on-disk solution (LMDB) - making use of a dedicated device for disk I/O on the hot code path
  • adds new profile families faststartup and utxoscale for UTxO set growth benchmarking and exploration
  • adds workbench profile vocabulary to target GHC RTS's heap limit
  • new dedicated fast and latency profiles for Nomad, for minimal complete automation cycle (fast), and for creating a cluster network latency matrix (latency)
  • better cluster error handling when the tx-generator service is involved, and for using an incompatible genesis format
  • various quality-of-life improvements for the Nomad backend and workbench

Checklist

  • Commit sequence broadly makes sense and commits have useful messages
  • New tests are added if needed and existing tests are updated. These may include:
    • golden tests
    • property tests
    • roundtrip tests
    • integration tests
      See Runnings tests for more details
  • Any changes are noted in the CHANGELOG.md for affected package
  • The version bounds in .cabal files are updated
  • CI passes. See note on CI. The following CI checks are required:
    • Code is linted with hlint. See .github/workflows/check-hlint.yml to get the hlint version
    • Code is formatted with stylish-haskell. See .github/workflows/stylish-haskell.yml to get the stylish-haskell version
    • Code builds on Linux, MacOS and Windows for ghc-8.10.7 and ghc-9.2.7
  • Self-reviewed the diff

@mgmeier mgmeier changed the title workbench: <tbd> workbench: UTxO scaling, LMDB benchmarks, multiple Nomad clusters Apr 12, 2024
@mgmeier mgmeier changed the title workbench: UTxO scaling, LMDB benchmarks, multiple Nomad clusters workbench: UTxO scaling, LMDB benchmarks, improved Nomad cluster handling Apr 12, 2024
@mgmeier mgmeier changed the title workbench: UTxO scaling, LMDB benchmarks, improved Nomad cluster handling workbench: UTxO scaling + LMDB benchmarks, improved Nomad cluster handling Apr 12, 2024
@mgmeier mgmeier marked this pull request as ready for review April 12, 2024 11:30
@mgmeier mgmeier requested review from a team as code owners April 12, 2024 11:30
@mgmeier mgmeier force-pushed the bench-master branch 2 times, most recently from 8d4c0c5 to 2222ad3 Compare April 12, 2024 12:20
Copy link
Contributor

@fmaste fmaste left a comment

Choose a reason for hiding this comment

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

LGTM

Merged via the queue into master with commit 0cc5b08 Apr 16, 2024
22 checks passed
@mgmeier mgmeier deleted the bench-master branch April 16, 2024 12:19
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.

3 participants