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

[compiler-v2] Enable recent stack-optimizations by default #15595

Merged
merged 2 commits into from
Dec 15, 2024

Conversation

vineethk
Copy link
Contributor

@vineethk vineethk commented Dec 13, 2024

Description

In this PR, we enable the optimizations/optimization fixes in #15445 and #15514 by default in compiler v2, eliminating various checks performed all through the code (we eliminate the temporary experiments AVOID_STORE_IN_ASSIGNS and RETAIN_TEMPS_FOR_ARGS and change code such that these are always true).

This PR will be merged after the comparison testing for the above two PRs complete.

How Has This Been Tested?

Key Areas to Review

Any inadvertent changes where we may have changed the semantics described at the top of the PR.

Type of Change

  • Performance improvement
  • Refactoring

Which Components or Systems Does This Change Impact?

  • Move Compiler

Copy link

trunk-io bot commented Dec 13, 2024

⏱️ 2h 16m total CI duration on this PR
Slowest 15 Jobs Cumulative Duration Recent Runs
execution-performance / single-node-performance 28m 🟥🟩
rust-move-tests 13m 🟩
rust-move-tests 13m 🟩
rust-move-tests 13m 🟩
rust-move-tests 13m 🟩
rust-move-tests 13m 🟩
rust-cargo-deny 9m 🟩🟩🟩🟩 (+1 more)
rust-doc-tests 6m 🟩
check-dynamic-deps 5m 🟩🟩🟩🟩🟩 (+1 more)
execution-performance / test-target-determinator 5m 🟩
test-target-determinator 4m 🟩
check 4m 🟩
general-lints 3m 🟩🟩🟩🟩 (+1 more)
semgrep/ci 2m 🟩🟩🟩🟩🟩 (+1 more)
fetch-last-released-docker-image-tag 2m 🟩

settingsfeedbackdocs ⋅ learn more about trunk.io

Copy link
Contributor Author

vineethk commented Dec 13, 2024

Base automatically changed from vk/temps-for-each-args to main December 13, 2024 22:50
@vineethk vineethk force-pushed the vk/enable-recent-stack-opts-by-default branch from 39d74aa to 8a6710f Compare December 13, 2024 22:54
@vineethk vineethk enabled auto-merge (squash) December 15, 2024 02:08

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

Copy link
Contributor

✅ Forge suite compat success on 3c6e693a27339e73520f41030dce8fc9cd504967 ==> ac6ddd7e546aec0ddf637c91b7a118a0139ffd4b

Compatibility test results for 3c6e693a27339e73520f41030dce8fc9cd504967 ==> ac6ddd7e546aec0ddf637c91b7a118a0139ffd4b (PR)
1. Check liveness of validators at old version: 3c6e693a27339e73520f41030dce8fc9cd504967
compatibility::simple-validator-upgrade::liveness-check : committed: 15811.30 txn/s, latency: 2117.44 ms, (p50: 1900 ms, p70: 2100, p90: 2700 ms, p99: 5100 ms), latency samples: 522040
2. Upgrading first Validator to new version: ac6ddd7e546aec0ddf637c91b7a118a0139ffd4b
compatibility::simple-validator-upgrade::single-validator-upgrading : committed: 6134.93 txn/s, latency: 4669.48 ms, (p50: 4200 ms, p70: 5700, p90: 6200 ms, p99: 6400 ms), latency samples: 114940
compatibility::simple-validator-upgrade::single-validator-upgrade : committed: 7462.91 txn/s, latency: 4382.46 ms, (p50: 4700 ms, p70: 4800, p90: 4900 ms, p99: 5300 ms), latency samples: 252320
3. Upgrading rest of first batch to new version: ac6ddd7e546aec0ddf637c91b7a118a0139ffd4b
compatibility::simple-validator-upgrade::half-validator-upgrading : committed: 7057.56 txn/s, latency: 3986.31 ms, (p50: 4600 ms, p70: 4800, p90: 4900 ms, p99: 5100 ms), latency samples: 130180
compatibility::simple-validator-upgrade::half-validator-upgrade : committed: 7215.99 txn/s, latency: 4564.45 ms, (p50: 4900 ms, p70: 5000, p90: 5100 ms, p99: 5400 ms), latency samples: 238260
4. upgrading second batch to new version: ac6ddd7e546aec0ddf637c91b7a118a0139ffd4b
compatibility::simple-validator-upgrade::rest-validator-upgrading : committed: 11225.35 txn/s, latency: 2485.64 ms, (p50: 2700 ms, p70: 2800, p90: 3000 ms, p99: 3100 ms), latency samples: 197740
compatibility::simple-validator-upgrade::rest-validator-upgrade : committed: 11563.04 txn/s, latency: 2769.48 ms, (p50: 2900 ms, p70: 2900, p90: 3100 ms, p99: 3400 ms), latency samples: 375420
5. check swarm health
Compatibility test for 3c6e693a27339e73520f41030dce8fc9cd504967 ==> ac6ddd7e546aec0ddf637c91b7a118a0139ffd4b passed
Test Ok

Copy link
Contributor

✅ Forge suite realistic_env_max_load success on ac6ddd7e546aec0ddf637c91b7a118a0139ffd4b

two traffics test: inner traffic : committed: 15021.58 txn/s, latency: 2645.40 ms, (p50: 2700 ms, p70: 2700, p90: 2700 ms, p99: 3000 ms), latency samples: 5711500
two traffics test : committed: 99.99 txn/s, latency: 1310.73 ms, (p50: 1300 ms, p70: 1300, p90: 1400 ms, p99: 1600 ms), latency samples: 1780
Latency breakdown for phase 0: ["MempoolToBlockCreation: max: 1.554, avg: 1.510", "ConsensusProposalToOrdered: max: 0.324, avg: 0.291", "ConsensusOrderedToCommit: max: 0.300, avg: 0.291", "ConsensusProposalToCommit: max: 0.588, avg: 0.581"]
Max non-epoch-change gap was: 0 rounds at version 0 (avg 0.00) [limit 4], 1.56s no progress at version 34818 (avg 0.20s) [limit 15].
Max epoch-change gap was: 0 rounds at version 0 (avg 0.00) [limit 4], 0.55s no progress at version 2334007 (avg 0.55s) [limit 16].
Test Ok

Copy link
Contributor

✅ Forge suite framework_upgrade success on 3c6e693a27339e73520f41030dce8fc9cd504967 ==> ac6ddd7e546aec0ddf637c91b7a118a0139ffd4b

Compatibility test results for 3c6e693a27339e73520f41030dce8fc9cd504967 ==> ac6ddd7e546aec0ddf637c91b7a118a0139ffd4b (PR)
Upgrade the nodes to version: ac6ddd7e546aec0ddf637c91b7a118a0139ffd4b
framework_upgrade::framework-upgrade::full-framework-upgrade : committed: 1382.56 txn/s, submitted: 1385.15 txn/s, failed submission: 2.59 txn/s, expired: 2.59 txn/s, latency: 2286.24 ms, (p50: 2100 ms, p70: 2400, p90: 3700 ms, p99: 5100 ms), latency samples: 117580
framework_upgrade::framework-upgrade::full-framework-upgrade : committed: 557.98 txn/s, submitted: 594.33 txn/s, failed submission: 0.87 txn/s, expired: 36.34 txn/s, latency: 5547.03 ms, (p50: 1800 ms, p70: 2300, p90: 21700 ms, p99: 23500 ms), latency samples: 38568
5. check swarm health
Compatibility test for 3c6e693a27339e73520f41030dce8fc9cd504967 ==> ac6ddd7e546aec0ddf637c91b7a118a0139ffd4b passed
Upgrade the remaining nodes to version: ac6ddd7e546aec0ddf637c91b7a118a0139ffd4b
framework_upgrade::framework-upgrade::full-framework-upgrade : committed: 1321.13 txn/s, submitted: 1323.19 txn/s, failed submission: 2.06 txn/s, expired: 2.06 txn/s, latency: 2364.40 ms, (p50: 2400 ms, p70: 2700, p90: 3300 ms, p99: 4800 ms), latency samples: 115340
Test Ok

@vineethk vineethk merged commit 3497c86 into main Dec 15, 2024
80 of 88 checks passed
@vineethk vineethk deleted the vk/enable-recent-stack-opts-by-default branch December 15, 2024 03:24
vineethk added a commit that referenced this pull request Dec 16, 2024
* Creating temps for each arg. (#15514)

* [compiler-v2] Enable recent stack-optimizations by default (#15595)
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