-
Notifications
You must be signed in to change notification settings - Fork 11.2k
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
[Bench] Run benchmark using Batch Transaction #953
Conversation
I confirmed that I also see a dramatic speed up (although less dramatic on my linux, not M1 laptop):
As compared to:
I also took the freedom to push an additional debug! log line to this PR so that you can see the objects written on the debug log:
So it seems they are really being written to disk :) . The only thing to check now is whether an invalid signature is also accepted, to ensure that we do the verification (no reason not, this PR does not change this path). |
The results from the AWS machine are also interesting:
I read the above as meaning that with batches we are now no more bottlenecked a s before on CPU (see the baseline going up as we throw more cpu) but instead now it is lock contention and synchronization to access the DB that costs us. This is not the DB itself being a bottleneck, as it can get to 80K TPS on fewer cores writing, but rather the machinery around it to allow for multi thread access. It is also clear to me that given this limitation Macs M1 + MacOS handles contention much better than linix (maybe we should run authorities on BSD? :) ). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Impressive.
I am also adding here the baseline perf we get for main right now as a comparison:
|
…ystenLabs#953) Bumps [jidicula/clang-format-action](https://github.com/jidicula/clang-format-action) from 4.8.0 to 4.9.0. - [Release notes](https://github.com/jidicula/clang-format-action/releases) - [Commits](jidicula/clang-format-action@v4.8.0...v4.9.0) --- updated-dependencies: - dependency-name: jidicula/clang-format-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Added option
--batch-size
that can specify the size of a batch. If it's 1, we will send normal Single transactions.Renamed
--num-accounts
to--num-transactions
since accounts don't make sense here anymore.Numbers are too good to be true. Did I miss anything?