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] Set V2 as the default compiler #15408

Merged
merged 11 commits into from
Jan 10, 2025

Conversation

rahxephon89
Copy link
Contributor

@rahxephon89 rahxephon89 commented Nov 26, 2024

Description

This PR:

  1. sets v2 as the default compiler in aptos-move;
  2. updates related tests;
  3. removes CI tests for compiler v2;
  4. added MOVE_COMPILER_V1 environment variable.

close #13869

Note:

  1. will have a separate PR to remove all v2_exp files once exp files in this PR are manually verified.

  2. Following crates in third_party/move are still using V1 compiler API. Will switch to V2 in a separate PR.

    move-to-yul,
    move-vm-integration-tests,
    move-model,
    move-stackless-bytecode-test-utils,
    move-stackless-bytecode

How Has This Been Tested?

All existing tests pass.

Key Areas to Review

Changes are scattered in the while aptos-core repo, need to carefully check whether these changes are correct and complete

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 26, 2024

⏱️ 2h 2m total CI duration on this PR
Job Cumulative Duration Recent Runs
execution-performance / single-node-performance 45m 🟥🟩
rust-unit-tests 23m 🟩
rust-move-tests 13m 🟩
rust-move-tests 12m 🟩
rust-cargo-deny 7m 🟩🟩🟩🟩
rust-move-tests 7m
check-dynamic-deps 5m 🟩🟩🟩🟩
rust-doc-tests 5m 🟩
semgrep/ci 2m 🟩🟩🟩🟩🟩
general-lints 2m 🟩🟩🟩🟩
file_change_determinator 42s 🟩🟩🟩🟩
permission-check 12s 🟩🟩🟩🟩
permission-check 10s 🟩🟩🟩🟩
check-branch-prefix 1s 🟩🟩

settingsfeedbackdocs ⋅ learn more about trunk.io

Copy link
Contributor Author

rahxephon89 commented Nov 26, 2024

This stack of pull requests is managed by Graphite. Learn more about stacking.

@rahxephon89 rahxephon89 force-pushed the teng/use-v2-as-default-in-rust-unit-tests branch 2 times, most recently from db094c9 to 2c9bf22 Compare December 2, 2024 19:09
@rahxephon89 rahxephon89 force-pushed the teng/use-v2-as-default-in-rust-unit-tests branch 2 times, most recently from 9eaa4ab to 4826561 Compare December 16, 2024 00:02
@rahxephon89 rahxephon89 changed the title [test-only] set v2 flag for unit tests [test-only] Set V2 as the default compiler Dec 16, 2024
@rahxephon89 rahxephon89 force-pushed the teng/use-v2-as-default-in-rust-unit-tests branch 2 times, most recently from 94b157a to d6cfb28 Compare December 16, 2024 17:30
@rahxephon89 rahxephon89 force-pushed the teng/use-v2-as-default-in-rust-unit-tests branch 10 times, most recently from e51881b to 353e020 Compare January 7, 2025 05:06
@rahxephon89 rahxephon89 changed the title [test-only] Set V2 as the default compiler [compiler-v2] Set V2 as the default compiler Jan 7, 2025
@rahxephon89 rahxephon89 force-pushed the teng/use-v2-as-default-in-rust-unit-tests branch 3 times, most recently from f7d532a to 9cfa04d Compare January 7, 2025 06:20
@rahxephon89 rahxephon89 marked this pull request as ready for review January 7, 2025 18:18
@rahxephon89 rahxephon89 force-pushed the teng/use-v2-as-default-in-rust-unit-tests branch from e9531c8 to 2ad1a64 Compare January 9, 2025 21:54
@rahxephon89 rahxephon89 enabled auto-merge (squash) January 10, 2025 17:36

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.

This comment has been minimized.

This comment has been minimized.

@rahxephon89 rahxephon89 disabled auto-merge January 10, 2025 19:26
@rahxephon89 rahxephon89 enabled auto-merge (squash) January 10, 2025 19:29
@rahxephon89 rahxephon89 force-pushed the teng/use-v2-as-default-in-rust-unit-tests branch from 2b190e8 to 8b3915d Compare January 10, 2025 19:44

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 6593fb81261f25490ffddc2252a861c994234c2a ==> 4d6b26a4b6da5ccf7ce4c6128427bb1e19adb49f

Compatibility test results for 6593fb81261f25490ffddc2252a861c994234c2a ==> 4d6b26a4b6da5ccf7ce4c6128427bb1e19adb49f (PR)
1. Check liveness of validators at old version: 6593fb81261f25490ffddc2252a861c994234c2a
compatibility::simple-validator-upgrade::liveness-check : committed: 16887.21 txn/s, latency: 1999.55 ms, (p50: 1900 ms, p70: 2100, p90: 2400 ms, p99: 4300 ms), latency samples: 574220
2. Upgrading first Validator to new version: 4d6b26a4b6da5ccf7ce4c6128427bb1e19adb49f
compatibility::simple-validator-upgrade::single-validator-upgrading : committed: 7973.49 txn/s, latency: 3783.84 ms, (p50: 4300 ms, p70: 4500, p90: 4600 ms, p99: 4700 ms), latency samples: 148600
compatibility::simple-validator-upgrade::single-validator-upgrade : committed: 8091.76 txn/s, latency: 4156.42 ms, (p50: 4500 ms, p70: 4600, p90: 4800 ms, p99: 5100 ms), latency samples: 271920
3. Upgrading rest of first batch to new version: 4d6b26a4b6da5ccf7ce4c6128427bb1e19adb49f
compatibility::simple-validator-upgrade::half-validator-upgrading : committed: 7581.40 txn/s, latency: 3971.69 ms, (p50: 4500 ms, p70: 4800, p90: 5100 ms, p99: 5300 ms), latency samples: 137400
compatibility::simple-validator-upgrade::half-validator-upgrade : committed: 7643.14 txn/s, latency: 4424.20 ms, (p50: 4800 ms, p70: 4900, p90: 5200 ms, p99: 5300 ms), latency samples: 255520
4. upgrading second batch to new version: 4d6b26a4b6da5ccf7ce4c6128427bb1e19adb49f
compatibility::simple-validator-upgrade::rest-validator-upgrading : committed: 12842.56 txn/s, latency: 2261.87 ms, (p50: 2200 ms, p70: 2600, p90: 3300 ms, p99: 3500 ms), latency samples: 222060
compatibility::simple-validator-upgrade::rest-validator-upgrade : committed: 12668.91 txn/s, latency: 2505.58 ms, (p50: 2300 ms, p70: 3000, p90: 3400 ms, p99: 3900 ms), latency samples: 414840
5. check swarm health
Compatibility test for 6593fb81261f25490ffddc2252a861c994234c2a ==> 4d6b26a4b6da5ccf7ce4c6128427bb1e19adb49f passed
Test Ok

Copy link
Contributor

✅ Forge suite realistic_env_max_load success on 4d6b26a4b6da5ccf7ce4c6128427bb1e19adb49f

two traffics test: inner traffic : committed: 14840.09 txn/s, latency: 2678.67 ms, (p50: 2700 ms, p70: 2700, p90: 2900 ms, p99: 3200 ms), latency samples: 5642520
two traffics test : committed: 99.99 txn/s, latency: 1344.55 ms, (p50: 1300 ms, p70: 1400, p90: 1500 ms, p99: 2100 ms), latency samples: 1860
Latency breakdown for phase 0: ["MempoolToBlockCreation: max: 1.598, avg: 1.548", "ConsensusProposalToOrdered: max: 0.291, avg: 0.287", "ConsensusOrderedToCommit: max: 0.305, avg: 0.297", "ConsensusProposalToCommit: max: 0.593, avg: 0.584"]
Max non-epoch-change gap was: 0 rounds at version 0 (avg 0.00) [limit 4], 0.51s no progress at version 469 (avg 0.19s) [limit 15].
Max epoch-change gap was: 0 rounds at version 0 (avg 0.00) [limit 4], 0.54s no progress at version 2373169 (avg 0.54s) [limit 16].
Test Ok

@sherry-x sherry-x disabled auto-merge January 10, 2025 22:29
@sherry-x sherry-x merged commit 979b66f into main Jan 10, 2025
45 of 46 checks passed
@sherry-x sherry-x deleted the teng/use-v2-as-default-in-rust-unit-tests branch January 10, 2025 22:29
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.

[Bug][move-compiler-v2] aptos-api tests fail with MOVE_COMPILER_V2=true
4 participants