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

use move compiler v2 by default #14967

Merged
merged 2 commits into from
Oct 21, 2024
Merged

use move compiler v2 by default #14967

merged 2 commits into from
Oct 21, 2024

Conversation

aluon
Copy link
Contributor

@aluon aluon commented Oct 15, 2024

Description

Update the tools-builder image to use Move compiler v2. This will make compiler v2 the default for Forge and devnet

How Has This Been Tested?

#52 269.4 MOVE_COMPILER_V2: true
#52 269.4 Building the Aptos Move framework...
Compatibility test results for 7eeba4cd15892717741a614add1afde004c7855f ==> a3e74e8bea19e9669f8dd5c28b49b4e7bdaa397a (PR)

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 Oct 15, 2024

⏱️ 2h 34m total CI duration on this PR
Slowest 15 Jobs Cumulative Duration Recent Runs
test-target-determinator 36m 🟩🟩🟩🟩🟩 (+3 more)
forge-framework-upgrade-test / forge 17m 🟩
rust-cargo-deny 14m 🟩🟩🟩🟩🟩 (+4 more)
execution-performance / test-target-determinator 14m 🟩🟩🟩
check 11m 🟩🟩🟩
check-dynamic-deps 7m 🟩🟩🟩🟩🟩 (+4 more)
fetch-last-released-docker-image-tag 6m 🟩🟩🟩🟩
rust-doc-tests 6m 🟩
rust-doc-tests 5m 🟩
rust-doc-tests 5m 🟩
general-lints 4m 🟩🟩🟩🟩🟩 (+4 more)
semgrep/ci 3m 🟩🟩🟩🟩🟩 (+4 more)
determine-test-metadata 3m 🟩🟩
rust-move-tests 2m 🟩
rust-move-tests 2m 🟩

🚨 1 job on the last run was significantly faster/slower than expected

Job Duration vs 7d avg Delta
execution-performance / single-node-performance 10s 19m -99%

settingsfeedbackdocs ⋅ learn more about trunk.io

@aluon aluon added the CICD:build-images when this label is present github actions will start build+push rust images from the PR. label Oct 15, 2024
@aluon aluon force-pushed the aluon/forge-move-compiler-v2 branch 2 times, most recently from 5353a14 to 2dd3017 Compare October 15, 2024 17:58

This comment has been minimized.

@aluon aluon added the CICD:run-e2e-tests when this label is present github actions will run all land-blocking e2e tests from the PR label Oct 15, 2024

This comment has been minimized.

This comment has been minimized.

@aluon aluon marked this pull request as ready for review October 16, 2024 17:35
@aluon aluon requested a review from a team as a code owner October 16, 2024 17:35
@aluon aluon changed the title use move compiler v2 for forge use move compiler v2 by default Oct 16, 2024
@sherry-x sherry-x requested a review from a team October 21, 2024 18:43
@sherry-x sherry-x enabled auto-merge (rebase) October 21, 2024 18:44

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

@@ -45,5 +45,6 @@ for BIN in "${BINS[@]}"; do
done

# Build the Aptos Move framework and place it in dist. It can be found afterwards in the current directory.
echo "MOVE_COMPILER_V2: ${MOVE_COMPILER_V2:-not set}"
Copy link
Contributor

Choose a reason for hiding this comment

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

Is there a reason we dont just set this here to ensure that its set whenever we're running tools?c

Copy link
Contributor Author

Choose a reason for hiding this comment

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

We can make the change here instead

I originally planned to have two tools image with compiler v2 enabled/disabled so I put this in the Dockerfile

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I'm just going to keep the env var in the Dockerfile since this is already tested. This looks like the only place we use the build-tools script

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

Copy link
Contributor

✅ Forge suite compat success on b29f09f57e898d8d211c8bc3e303f6e50bba2266 ==> 35136e029de3cc3a000512cff25a906ed447596d

Compatibility test results for b29f09f57e898d8d211c8bc3e303f6e50bba2266 ==> 35136e029de3cc3a000512cff25a906ed447596d (PR)
1. Check liveness of validators at old version: b29f09f57e898d8d211c8bc3e303f6e50bba2266
compatibility::simple-validator-upgrade::liveness-check : committed: 13195.66 txn/s, latency: 2474.70 ms, (p50: 2100 ms, p70: 2400, p90: 4300 ms, p99: 11500 ms), latency samples: 450600
2. Upgrading first Validator to new version: 35136e029de3cc3a000512cff25a906ed447596d
compatibility::simple-validator-upgrade::single-validator-upgrading : committed: 5869.55 txn/s, latency: 4925.73 ms, (p50: 5600 ms, p70: 6000, p90: 6100 ms, p99: 6300 ms), latency samples: 113280
compatibility::simple-validator-upgrade::single-validator-upgrade : committed: 5188.70 txn/s, latency: 5909.32 ms, (p50: 6400 ms, p70: 6600, p90: 6800 ms, p99: 7200 ms), latency samples: 191580
3. Upgrading rest of first batch to new version: 35136e029de3cc3a000512cff25a906ed447596d
compatibility::simple-validator-upgrade::half-validator-upgrading : committed: 4161.63 txn/s, latency: 6736.48 ms, (p50: 6900 ms, p70: 8200, p90: 8600 ms, p99: 8800 ms), latency samples: 91780
compatibility::simple-validator-upgrade::half-validator-upgrade : committed: 3660.00 txn/s, latency: 8845.52 ms, (p50: 9500 ms, p70: 9900, p90: 10300 ms, p99: 11400 ms), latency samples: 129560
4. upgrading second batch to new version: 35136e029de3cc3a000512cff25a906ed447596d
compatibility::simple-validator-upgrade::rest-validator-upgrading : committed: 7430.73 txn/s, latency: 3602.12 ms, (p50: 3200 ms, p70: 4400, p90: 6200 ms, p99: 7000 ms), latency samples: 138900
compatibility::simple-validator-upgrade::rest-validator-upgrade : committed: 8468.22 txn/s, latency: 3617.04 ms, (p50: 3500 ms, p70: 3900, p90: 4500 ms, p99: 4800 ms), latency samples: 285340
5. check swarm health
Compatibility test for b29f09f57e898d8d211c8bc3e303f6e50bba2266 ==> 35136e029de3cc3a000512cff25a906ed447596d passed
Test Ok

Copy link
Contributor

✅ Forge suite realistic_env_max_load success on 35136e029de3cc3a000512cff25a906ed447596d

two traffics test: inner traffic : committed: 12071.90 txn/s, latency: 3289.61 ms, (p50: 3000 ms, p70: 3300, p90: 3600 ms, p99: 5700 ms), latency samples: 4590000
two traffics test : committed: 100.02 txn/s, latency: 2001.67 ms, (p50: 1700 ms, p70: 2300, p90: 2500 ms, p99: 10400 ms), latency samples: 1700
Latency breakdown for phase 0: ["QsBatchToPos: max: 0.239, avg: 0.220", "QsPosToProposal: max: 0.951, avg: 0.909", "ConsensusProposalToOrdered: max: 0.337, avg: 0.334", "ConsensusOrderedToCommit: max: 0.570, avg: 0.515", "ConsensusProposalToCommit: max: 0.905, avg: 0.849"]
Max non-epoch-change gap was: 0 rounds at version 0 (avg 0.00) [limit 4], 0.90s no progress at version 2284807 (avg 0.24s) [limit 15].
Max epoch-change gap was: 0 rounds at version 0 (avg 0.00) [limit 4], 7.37s no progress at version 2284805 (avg 7.37s) [limit 15].
Test Ok

Copy link
Contributor

✅ Forge suite framework_upgrade success on b29f09f57e898d8d211c8bc3e303f6e50bba2266 ==> 35136e029de3cc3a000512cff25a906ed447596d

Compatibility test results for b29f09f57e898d8d211c8bc3e303f6e50bba2266 ==> 35136e029de3cc3a000512cff25a906ed447596d (PR)
Upgrade the nodes to version: 35136e029de3cc3a000512cff25a906ed447596d
framework_upgrade::framework-upgrade::full-framework-upgrade : committed: 1168.74 txn/s, submitted: 1171.26 txn/s, failed submission: 2.51 txn/s, expired: 2.51 txn/s, latency: 2615.45 ms, (p50: 2400 ms, p70: 3000, p90: 3900 ms, p99: 5200 ms), latency samples: 102240
framework_upgrade::framework-upgrade::full-framework-upgrade : committed: 1230.85 txn/s, submitted: 1234.00 txn/s, failed submission: 3.16 txn/s, expired: 3.16 txn/s, latency: 2579.00 ms, (p50: 2400 ms, p70: 2700, p90: 4200 ms, p99: 5700 ms), latency samples: 109180
5. check swarm health
Compatibility test for b29f09f57e898d8d211c8bc3e303f6e50bba2266 ==> 35136e029de3cc3a000512cff25a906ed447596d passed
Upgrade the remaining nodes to version: 35136e029de3cc3a000512cff25a906ed447596d
framework_upgrade::framework-upgrade::full-framework-upgrade : committed: 1196.53 txn/s, submitted: 1198.30 txn/s, failed submission: 1.77 txn/s, expired: 1.77 txn/s, latency: 2478.82 ms, (p50: 2400 ms, p70: 2700, p90: 3300 ms, p99: 5000 ms), latency samples: 108080
Test Ok

@sherry-x sherry-x merged commit 52d15b1 into main Oct 21, 2024
43 of 46 checks passed
@sherry-x sherry-x deleted the aluon/forge-move-compiler-v2 branch October 21, 2024 22:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CICD:build-images when this label is present github actions will start build+push rust images from the PR. CICD:run-e2e-tests when this label is present github actions will run all land-blocking e2e tests from the PR CICD:run-framework-upgrade-test
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants