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

avoid allocating 16 hashmaps per transaction #15184

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

msmouse
Copy link
Contributor

@msmouse msmouse commented Nov 4, 2024

Description

Lazily, allocate one vector of updates per shard.

How Has This Been Tested?

Key Areas to Review

Type of Change

  • New feature
  • Bug fix
  • Breaking change
  • Performance improvement
  • Refactoring
  • Dependency update
  • Documentation update
  • Tests

Which Components or Systems Does This Change Impact?

  • Validator Node
  • Full Node (API, Indexer, etc.)
  • Move/Aptos Virtual Machine
  • Aptos Framework
  • Aptos CLI/SDK
  • Developer Infrastructure
  • Move Compiler
  • Other (specify)

Checklist

  • I have read and followed the CONTRIBUTING doc
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I identified and added all stakeholders and component owners affected by this change as reviewers
  • I tested both happy and unhappy path of the functionality
  • I have made corresponding changes to the documentation

Copy link

trunk-io bot commented Nov 4, 2024

⏱️ 4h 42m total CI duration on this PR
Slowest 15 Jobs Cumulative Duration Recent Runs
execution-performance / single-node-performance 1h 54m 🟩🟩🟩🟩🟩
execution-performance / test-target-determinator 19m 🟩🟩🟩🟩
test-target-determinator 19m 🟩🟩🟩🟩
rust-cargo-deny 16m 🟩🟩🟩🟩 (+6 more)
check-dynamic-deps 11m 🟩🟩🟩🟩🟩 (+6 more)
rust-move-tests 10m 🟩
rust-move-tests 9m
rust-move-tests 9m 🟩
rust-move-tests 9m 🟩
rust-move-tests 9m 🟩
rust-move-tests 9m 🟩
rust-move-tests 9m 🟩
check 7m 🟩🟩
rust-doc-tests 5m 🟩
rust-doc-tests 5m 🟩

settingsfeedbackdocs ⋅ learn more about trunk.io

@msmouse msmouse force-pushed the 1031-alden-no-per-ver-updates branch 7 times, most recently from e1c342e to 36fba40 Compare November 5, 2024 01:06
@msmouse msmouse added the CICD:run-execution-performance-test Run execution performance test label Nov 5, 2024
@msmouse msmouse force-pushed the 1031-alden-no-per-ver-updates branch from 36fba40 to 5843647 Compare November 5, 2024 01:26
@msmouse msmouse changed the title Stop writing down usage at all versions avoid allocating 16 hashmaps per transaction Nov 5, 2024
@msmouse msmouse added the CICD:run-e2e-tests when this label is present github actions will run all land-blocking e2e tests from the PR label Nov 5, 2024

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

@msmouse msmouse force-pushed the 1031-alden-no-per-ver-updates branch from 5843647 to ad22a9c Compare November 5, 2024 02:40

This comment has been minimized.

This comment has been minimized.

Copy link
Contributor

github-actions bot commented Nov 5, 2024

✅ Forge suite realistic_env_max_load success on ad22a9c0c3845c6ab45dd993b177526c4ed3bbf1

two traffics test: inner traffic : committed: 14380.85 txn/s, latency: 2761.96 ms, (p50: 2700 ms, p70: 2700, p90: 3000 ms, p99: 3300 ms), latency samples: 5467900
two traffics test : committed: 100.07 txn/s, latency: 1480.42 ms, (p50: 1400 ms, p70: 1400, p90: 1600 ms, p99: 9700 ms), latency samples: 1740
Latency breakdown for phase 0: ["MempoolToBlockCreation: max: 1.989, avg: 1.572", "ConsensusProposalToOrdered: max: 0.322, avg: 0.294", "ConsensusOrderedToCommit: max: 0.363, avg: 0.354", "ConsensusProposalToCommit: max: 0.654, avg: 0.648"]
Max non-epoch-change gap was: 0 rounds at version 0 (avg 0.00) [limit 4], 0.84s no progress at version 2005508 (avg 0.20s) [limit 15].
Max epoch-change gap was: 0 rounds at version 0 (avg 0.00) [limit 4], 8.44s no progress at version 2005506 (avg 7.59s) [limit 15].
Test Ok

Copy link
Contributor

github-actions bot commented Nov 5, 2024

✅ Forge suite compat success on 1086a5e00d773704731ab84fb4ed3538613b2250 ==> ad22a9c0c3845c6ab45dd993b177526c4ed3bbf1

Compatibility test results for 1086a5e00d773704731ab84fb4ed3538613b2250 ==> ad22a9c0c3845c6ab45dd993b177526c4ed3bbf1 (PR)
1. Check liveness of validators at old version: 1086a5e00d773704731ab84fb4ed3538613b2250
compatibility::simple-validator-upgrade::liveness-check : committed: 14669.25 txn/s, latency: 2330.61 ms, (p50: 2000 ms, p70: 2100, p90: 2200 ms, p99: 7800 ms), latency samples: 551340
2. Upgrading first Validator to new version: ad22a9c0c3845c6ab45dd993b177526c4ed3bbf1
compatibility::simple-validator-upgrade::single-validator-upgrading : committed: 6893.17 txn/s, latency: 4074.12 ms, (p50: 4700 ms, p70: 4900, p90: 5000 ms, p99: 5100 ms), latency samples: 126920
compatibility::simple-validator-upgrade::single-validator-upgrade : committed: 6405.12 txn/s, latency: 4645.50 ms, (p50: 5000 ms, p70: 5100, p90: 5300 ms, p99: 5800 ms), latency samples: 241980
3. Upgrading rest of first batch to new version: ad22a9c0c3845c6ab45dd993b177526c4ed3bbf1
compatibility::simple-validator-upgrade::half-validator-upgrading : committed: 6562.96 txn/s, latency: 4252.20 ms, (p50: 4700 ms, p70: 4900, p90: 5500 ms, p99: 5800 ms), latency samples: 130680
compatibility::simple-validator-upgrade::half-validator-upgrade : committed: 7097.58 txn/s, latency: 4560.51 ms, (p50: 4800 ms, p70: 4900, p90: 6300 ms, p99: 6800 ms), latency samples: 241360
4. upgrading second batch to new version: ad22a9c0c3845c6ab45dd993b177526c4ed3bbf1
compatibility::simple-validator-upgrade::rest-validator-upgrading : committed: 8689.55 txn/s, latency: 3259.85 ms, (p50: 3600 ms, p70: 3800, p90: 4300 ms, p99: 4600 ms), latency samples: 159960
compatibility::simple-validator-upgrade::rest-validator-upgrade : committed: 8901.00 txn/s, latency: 3573.77 ms, (p50: 3500 ms, p70: 3700, p90: 5800 ms, p99: 6100 ms), latency samples: 293700
5. check swarm health
Compatibility test for 1086a5e00d773704731ab84fb4ed3538613b2250 ==> ad22a9c0c3845c6ab45dd993b177526c4ed3bbf1 passed
Test Ok

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CICD:run-e2e-tests when this label is present github actions will run all land-blocking e2e tests from the PR CICD:run-execution-performance-test Run execution performance test
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant