Skip to content

Conversation

@dmitry123
Copy link
Member

@dmitry123 dmitry123 commented Sep 23, 2025

New Runtime Updates

  • revm-rwasm – switched from storing raw bytecode to storing the full module in bytecode (faster loading).

  • rwasm – fixed gas accounting bugs and incorrect emitter behavior, added RwasmModuleView for zero-copy module parsing.

  • runtime – nearly fully rewritten: introduced cross-thread caching, local/global executors, preloaded all rwasm modules, and fixed minor bugs.

  • testing – rwasm mode is now the default (wasmtime disabled). rwasm tests are significantly faster than wasmtime (e2e: 2s vs 19s, evm: 17min vs 1h19min with -j1).

  • CI/CD

    • enabled running benchmarks,
    • optimized EVM e2e test runs via genesis caching,
    • disabled SVM tests by default (they fail in rwasm mode),
    • CI now runs both rwasm and wasmtime tests.

…cache from a different thread, make import-linker arc, add warmup for all evm precompiled contracts in evm-e2e tests

Signed-off-by: Dmitry Savonin <nwtsoas@gmail.com>
…ecution runtime w/ wasmtime disabled, fix passing full evm e2e testing suite

Signed-off-by: Dmitry Savonin <nwtsoas@gmail.com>
@dmitry123 dmitry123 changed the title refactor(runtime): make runtime lock-free, fix issue with warming up cache from a different thread, make import-linker arc, add warmup for all evm precompiled contracts in evm-e2e tests refactor(runtime): new runtime & runtime bug fixes Sep 25, 2025
…e & rwasm tests in CI/CD, new revm-rwasm with `RwasmModule` cache, temporarly disable incepstor, add heap reset extern function, fix wasmtime warmups

Signed-off-by: Dmitry Savonin <nwtsoas@gmail.com>
Signed-off-by: Dmitry Savonin <nwtsoas@gmail.com>
Signed-off-by: Dmitry Savonin <nwtsoas@gmail.com>
@github-actions
Copy link

github-actions bot commented Sep 26, 2025

Criterion results (vs baseline)


running 71 tests


ERC20 Transfer Comparison/1_Original_EVM_ERC20
                        time:   [7.4221 µs 7.4236 µs 7.4253 µs]
Found 46 outliers among 1000 measurements (4.60%)
  4 (0.40%) low mild
  16 (1.60%) high mild
  26 (2.60%) high severe
ERC20 Transfer Comparison/2_Emulated_EVM_ERC20
                        time:   [1.5459 ms 1.5473 ms 1.5493 ms]
Found 14 outliers among 1000 measurements (1.40%)
  11 (1.10%) high mild
  3 (0.30%) high severe
ERC20 Transfer Comparison/3_rWasm_Contract_ERC20
                        time:   [2.5696 ms 2.5707 ms 2.5717 ms]
Found 10 outliers among 1000 measurements (1.00%)
  5 (0.50%) low mild
  5 (0.50%) high mild
ERC20 Transfer Comparison/4_Precompiled_UniversalToken
                        time:   [2.8278 ms 2.8289 ms 2.8301 ms]
Found 71 outliers among 1000 measurements (7.10%)
  7 (0.70%) low mild
  42 (4.20%) high mild
  22 (2.20%) high severe

Greeting Contract Comparison/Original_Greeting
                        time:   [3.7614 µs 3.7619 µs 3.7624 µs]
Found 1 outliers among 100 measurements (1.00%)
  1 (1.00%) high severe
Greeting Contract Comparison/EVM_Greeting
                        time:   [627.71 µs 628.90 µs 630.86 µs]
Found 6 outliers among 100 measurements (6.00%)
  3 (3.00%) high mild
  3 (3.00%) high severe
Greeting Contract Comparison/WASM_Greeting
                        time:   [134.23 µs 134.95 µs 135.76 µs]
Found 22 outliers among 100 measurements (22.00%)
  14 (14.00%) low severe
  1 (1.00%) low mild
  5 (5.00%) high mild
  2 (2.00%) high severe

Heads-up: runner perf is noisy; treat deltas as a smoke check.

Signed-off-by: Dmitry Savonin <nwtsoas@gmail.com>
Signed-off-by: Dmitry Savonin <nwtsoas@gmail.com>
Signed-off-by: Dmitry Savonin <nwtsoas@gmail.com>
Signed-off-by: Dmitry Savonin <nwtsoas@gmail.com>
Signed-off-by: Dmitry Savonin <nwtsoas@gmail.com>
Signed-off-by: Dmitry Savonin <nwtsoas@gmail.com>
@dmitry123 dmitry123 merged commit ea9bfbb into devel Sep 26, 2025
7 checks passed
@dmitry123 dmitry123 deleted the fix/runtime-sync-context branch September 26, 2025 20:56
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.

2 participants