Avatar for the oxc-project user
oxc-project
oxc
BlogDocsChangelog

perf(semantic): calculate number of nodes, scopes, symbols, references before visiting AST

#4367Merged
Comparing
test-visit
(
40f9356
) with
main
(
910f2a0
)
CodSpeed Performance Gauge
+30%
Improvements
12
Regressions
0
Untouched
20
New
0
Dropped
0
Ignored
0

Benchmarks

Improved

semantic[antd.js]
tasks/benchmark/benches/semantic.rs::semantic::bench_semantic::semantic[antd.js]
CodSpeed Performance Gauge
+30%
174.6 ms
134.3 ms
semantic[checker.ts]
tasks/benchmark/benches/semantic.rs::semantic::bench_semantic::semantic[checker.ts]
CodSpeed Performance Gauge
+25%
103.9 ms
82.9 ms
semantic[pdf.mjs]
tasks/benchmark/benches/semantic.rs::semantic::bench_semantic::semantic[pdf.mjs]
CodSpeed Performance Gauge
+21%
26.6 ms
22.1 ms
semantic[cal.com.tsx]
tasks/benchmark/benches/semantic.rs::semantic::bench_semantic::semantic[cal.com.tsx]
CodSpeed Performance Gauge
+16%
56.5 ms
48.7 ms
transformer[cal.com.tsx]
tasks/benchmark/benches/transformer.rs::transformer::bench_transformer::transformer[cal.com.tsx]
CodSpeed Performance Gauge
+16%
75.8 ms
65.4 ms
transformer[pdf.mjs]
tasks/benchmark/benches/transformer.rs::transformer::bench_transformer::transformer[pdf.mjs]
CodSpeed Performance Gauge
+16%
46.1 ms
39.8 ms
transformer[antd.js]
tasks/benchmark/benches/transformer.rs::transformer::bench_transformer::transformer[antd.js]
CodSpeed Performance Gauge
+16%
297.9 ms
257.6 ms
minifier[antd.js]
tasks/benchmark/benches/minifier.rs::minifier::bench_minifier::minifier[antd.js]
CodSpeed Performance Gauge
+13%
343.9 ms
303.9 ms
minifier[typescript.js]
tasks/benchmark/benches/minifier.rs::minifier::bench_minifier::minifier[typescript.js]
CodSpeed Performance Gauge
+12%
690.4 ms
615.1 ms
transformer[checker.ts]
tasks/benchmark/benches/transformer.rs::transformer::bench_transformer::transformer[checker.ts]
CodSpeed Performance Gauge
+12%
170.2 ms
151.7 ms
minifier[react.development.js]
tasks/benchmark/benches/minifier.rs::minifier::bench_minifier::minifier[react.development.js]
CodSpeed Performance Gauge
+11%
3.9 ms
3.5 ms
semantic[RadixUIAdoptionSection.jsx]
tasks/benchmark/benches/semantic.rs::semantic::bench_semantic::semantic[RadixUIAdoptionSection.jsx]
CodSpeed Performance Gauge
+5%
107.6 µs
102.4 µs

Passed

transformer[RadixUIAdoptionSection.jsx]
tasks/benchmark/benches/transformer.rs::transformer::bench_transformer::transformer[RadixUIAdoptionSection.jsx]
CodSpeed Performance Gauge
+1%
232.5 µs
231.1 µs
codegen_sourcemap[checker.ts]
tasks/benchmark/benches/codegen.rs::codegen::bench_codegen::codegen_sourcemap[checker.ts]
CodSpeed Performance Gauge
0%
75.1 ms
75.1 ms
parser[RadixUIAdoptionSection.jsx]
tasks/benchmark/benches/parser.rs::parser::bench_parser::parser[RadixUIAdoptionSection.jsx]
CodSpeed Performance Gauge
0%
76.8 µs
76.8 µs
lexer[pdf.mjs]
tasks/benchmark/benches/lexer.rs::lexer::bench_lexer::lexer[pdf.mjs]
CodSpeed Performance Gauge
0%
3.2 ms
3.2 ms
parser[cal.com.tsx]
tasks/benchmark/benches/parser.rs::parser::bench_parser::parser[cal.com.tsx]
CodSpeed Performance Gauge
0%
24 ms
24 ms
prepass[antd.js]
tasks/benchmark/benches/minifier.rs::minifier::bench_passes::prepass[antd.js]
CodSpeed Performance Gauge
0%
15.8 ms
15.8 ms
lexer[antd.js]
tasks/benchmark/benches/lexer.rs::lexer::bench_lexer::lexer[antd.js]
CodSpeed Performance Gauge
0%
20.1 ms
20.1 ms
lexer[cal.com.tsx]
tasks/benchmark/benches/lexer.rs::lexer::bench_lexer::lexer[cal.com.tsx]
CodSpeed Performance Gauge
0%
5 ms
5 ms
parser[checker.ts]
tasks/benchmark/benches/parser.rs::parser::bench_parser::parser[checker.ts]
CodSpeed Performance Gauge
0%
52.4 ms
52.4 ms
parser[pdf.mjs]
tasks/benchmark/benches/parser.rs::parser::bench_parser::parser[pdf.mjs]
CodSpeed Performance Gauge
0%
17.1 ms
17.1 ms
codegen[checker.ts]
tasks/benchmark/benches/codegen.rs::codegen::bench_codegen::codegen[checker.ts]
CodSpeed Performance Gauge
0%
18.3 ms
18.3 ms
lexer[checker.ts]
tasks/benchmark/benches/lexer.rs::lexer::bench_lexer::lexer[checker.ts]
CodSpeed Performance Gauge
0%
12 ms
12 ms
prepass[typescript.js]
tasks/benchmark/benches/minifier.rs::minifier::bench_passes::prepass[typescript.js]
CodSpeed Performance Gauge
0%
28 ms
28 ms
parser[antd.js]
tasks/benchmark/benches/parser.rs::parser::bench_parser::parser[antd.js]
CodSpeed Performance Gauge
0%
103.5 ms
103.5 ms
isolated-declarations[vue-id.ts]
tasks/benchmark/benches/isolated_declarations.rs::transformer::bench_isolated_declarations::isolated-declarations[vue-id.ts]
CodSpeed Performance Gauge
0%
379.3 ms
379.3 ms
lexer[RadixUIAdoptionSection.jsx]
tasks/benchmark/benches/lexer.rs::lexer::bench_lexer::lexer[RadixUIAdoptionSection.jsx]
CodSpeed Performance Gauge
0%
22.7 µs
22.7 µs
prepass[react.development.js]
tasks/benchmark/benches/minifier.rs::minifier::bench_passes::prepass[react.development.js]
CodSpeed Performance Gauge
-1%
208.2 µs
209.3 µs
sourcemap[cal.com.tsx]
tasks/benchmark/benches/sourcemap.rs::sourcemap::bench_sourcemap::sourcemap[cal.com.tsx]
CodSpeed Performance Gauge
-1%
56.8 ms
57.1 ms
linter[cal.com.tsx]
tasks/benchmark/benches/linter.rs::linter::bench_linter::linter[cal.com.tsx]
CodSpeed Performance Gauge
-1%
767.5 ms
772 ms
linter[checker.ts]
tasks/benchmark/benches/linter.rs::linter::bench_linter::linter[checker.ts]
CodSpeed Performance Gauge
-1%
1.3 s
1.3 s

Commits

Click on a commit to change the comparison range
Base
main
910f2a0
+30%
perf(semantic): calculate number of nodes, scopes, symbols, references before visiting AST (#4367) context: #4328
40f9356
5 months ago
by Dunqing
Home Terms PrivacyDocs