Skip to content

Commit a331b4e

Browse files
docs: update incremental benchmarks (3.8.0) (#748)
* docs: update incremental benchmarks (3.8.0) * docs: add note explaining near-zero phase timings in 3.8.0 (#748) The full Rust build orchestration pipeline (#695) moved parsing, AST analysis, and complexity/CFG/dataflow computation into the native engine, so these phases no longer run separately during JS-side incremental rebuilds. --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: carlos-alm <127798846+carlos-alm@users.noreply.github.com>
1 parent c85ca01 commit a331b4e

1 file changed

Lines changed: 72 additions & 7 deletions

File tree

generated/benchmarks/INCREMENTAL-BENCHMARKS.md

Lines changed: 72 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ Import resolution: native batch vs JS fallback throughput.
66

77
| Version | Engine | Files | Full Build | No-op | 1-File | Resolve (native) | Resolve (JS) |
88
|---------|--------|------:|-----------:|------:|-------:|------------------:|-------------:|
9+
| 3.8.0 | native | 564 | 1.2s | 7ms | 33ms | 4ms ↑2% | 12ms ↓19% |
10+
| 3.8.0 | wasm | 564 | 1.2s ↓82% | 8ms ↓58% | 33ms ↓94% | 4ms ↑2% | 12ms ↓19% |
911
| 3.7.0 | wasm | 532 | 6.4s ↑5% | 19ms ↑46% | 558ms ↑2% | 4ms ↑3% | 15ms ↑31% |
1012
| 3.6.0 | wasm | 514 | 6.1s | 13ms | 545ms | 4ms ↓3% | 12ms ↑9% |
1113
| 3.4.1 | native | 473 | 2.4s ↑3% | 13ms ↑8% | 331ms ↓26% | 4ms ~ | 13ms ↑8% |
@@ -41,29 +43,92 @@ Import resolution: native batch vs JS fallback throughput.
4143

4244
### Latest results
4345

44-
**Version:** 3.7.0 | **Files:** 532 | **Date:** 2026-04-01
46+
**Version:** 3.8.0 | **Files:** 564 | **Date:** 2026-04-02
47+
48+
#### Native (Rust)
49+
50+
| Metric | Value |
51+
|--------|------:|
52+
| Full build | 1.2s |
53+
| No-op rebuild | 7ms |
54+
| 1-file rebuild | 33ms |
4555

4656
#### WASM
4757

4858
| Metric | Value |
4959
|--------|------:|
50-
| Full build | 6.4s |
51-
| No-op rebuild | 19ms |
52-
| 1-file rebuild | 558ms |
60+
| Full build | 1.2s |
61+
| No-op rebuild | 8ms |
62+
| 1-file rebuild | 33ms |
63+
64+
> **Note:** 3.8.0 phase timings (`parseMs`, `astMs`, `complexityMs`, `cfgMs`, `dataflowMs`) drop to
65+
> near-zero in 1-file rebuilds because the full Rust build orchestration pipeline (#695) now handles
66+
> parsing, AST analysis, and complexity/CFG/dataflow computation inside the native engine — these
67+
> phases no longer run separately during the JS-side incremental rebuild.
5368
5469
#### Import Resolution
5570

5671
| Metric | Value |
5772
|--------|------:|
58-
| Import pairs | 912 |
73+
| Import pairs | 933 |
5974
| Native batch | 4ms |
60-
| JS fallback | 15ms |
75+
| JS fallback | 12ms |
6176
| Per-import (native) | 0ms |
6277
| Per-import (JS) | 0ms |
63-
| Speedup ratio | 3.8x |
78+
| Speedup ratio | 3.0x |
6479

6580
<!-- INCREMENTAL_BENCHMARK_DATA
6681
[
82+
{
83+
"version": "3.8.0",
84+
"date": "2026-04-02",
85+
"files": 564,
86+
"wasm": {
87+
"fullBuildMs": 1184,
88+
"noopRebuildMs": 8,
89+
"oneFileRebuildMs": 33,
90+
"oneFilePhases": {
91+
"setupMs": 5.3,
92+
"parseMs": 0.3,
93+
"insertMs": 0.8,
94+
"resolveMs": 0.4,
95+
"edgesMs": 8.7,
96+
"structureMs": 0.2,
97+
"rolesMs": 13.9,
98+
"astMs": 0,
99+
"complexityMs": 0,
100+
"cfgMs": 0,
101+
"dataflowMs": 0,
102+
"finalizeMs": 0.3
103+
}
104+
},
105+
"native": {
106+
"fullBuildMs": 1166,
107+
"noopRebuildMs": 7,
108+
"oneFileRebuildMs": 33,
109+
"oneFilePhases": {
110+
"setupMs": 5.5,
111+
"parseMs": 0.3,
112+
"insertMs": 0.8,
113+
"resolveMs": 0.4,
114+
"edgesMs": 8.2,
115+
"structureMs": 0.2,
116+
"rolesMs": 14,
117+
"astMs": 0,
118+
"complexityMs": 0,
119+
"cfgMs": 0,
120+
"dataflowMs": 0,
121+
"finalizeMs": 0.3
122+
}
123+
},
124+
"resolve": {
125+
"imports": 933,
126+
"nativeBatchMs": 4.1,
127+
"jsFallbackMs": 12.4,
128+
"perImportNativeMs": 0,
129+
"perImportJsMs": 0
130+
}
131+
},
67132
{
68133
"version": "3.7.0",
69134
"date": "2026-04-01",

0 commit comments

Comments
 (0)