kamiazya
web-csv-toolbox
Blog
Docs
Changelog
Blog
Docs
Changelog
Overview
Branches
Benchmarks
Runs
GitHub Actions run
CPU Simulation
Uses the
CPU Simulation instrument
to collect CPU performance metrics.
11 days ago
6926119
pref-js
pull_request
Compare
Base
Search a run
Head
perf: JavaScript parser performance improvements
#614
pref-js
11 days ago
CPU Simulation
Compare
Suggested base runs:
Pull Request Base
•
Default Branch
•
Parent Commit
Skipped (8)
Benchmarks
Stream approach: parseBinaryStream (10KB)
benchmark/main.ts
51.3 ms
Scaling: 5000 rows
benchmark/main.ts
87.7 ms
parseString.toArraySync(50 cols, 50 rows, unquoted)
benchmark/main.ts
3.5 ms
parseString.toArraySync(10000 cols, 10 rows, quoted)
benchmark/main.ts
276.9 ms
parseString.toArraySync(50 cols, 50 rows, quoted)
benchmark/main.ts
5.2 ms
Scaling: 50 rows
benchmark/main.ts
810.1 µs
Binary approach: parseBinary (100KB)
benchmark/main.ts
42.3 ms
Scaling: 500 rows
benchmark/main.ts
8.5 ms
Worker perf: large (10000 rows) - mainThread
benchmark/main.ts
121.7 ms
Stream approach: parseBinaryStream (100KB)
benchmark/main.ts
164.7 ms
Stream approach: parseBinaryStream (1KB)
benchmark/main.ts
5.4 ms
parseString engine:stable (50 rows)
benchmark/main.ts
603 µs
parseString.toArraySync(10 cols, 50 rows, quoted)
benchmark/main.ts
1.2 ms
parseString.toArraySync(10 cols, 50 rows, unquoted)
benchmark/main.ts
822.9 µs
Stream approach: parseBinaryStream (1MB)
benchmark/main.ts
1.7 s
parseStringStream: medium (1000 rows)
benchmark/main.ts
81.4 ms
parseString.toArraySync(10000 cols, 10 rows, unquoted)
benchmark/main.ts
329.1 ms
Worker perf: small (100 rows) - mainThread
benchmark/main.ts
3 ms
parseBinary.toArraySync(50 rows)
benchmark/main.ts
536.8 µs
Worker perf: medium (1000 rows) - mainThread
benchmark/main.ts
28.4 ms
parseString.toArraySync(100 cols, 50 rows, quoted)
benchmark/main.ts
11.1 ms
parseString.toArraySync(100 cols, 50 rows, unquoted)
benchmark/main.ts
6.8 ms
parseStringStream: small (100 rows)
benchmark/main.ts
19.4 ms
parseString.toIterableIterator(50 rows)
benchmark/main.ts
1.4 ms
Binary approach: parseBinary (1MB)
benchmark/main.ts
195.2 ms
Concurrent: Parallel mainThread
benchmark/main.ts
24.5 ms
Binary approach: parseBinary (1KB)
benchmark/main.ts
288.7 µs
parseStringToArraySyncWASM(50 rows)
benchmark/main.ts
1.3 ms
parseString.toStream(50 rows)
benchmark/main.ts
4.3 ms
Binary approach: parseBinary (10KB)
benchmark/main.ts
4.4 ms
Worker perf: tiny (10 rows) - mainThread
benchmark/main.ts
526 µs
parseBinary.toIterableIterator(50 rows)
benchmark/main.ts
1.8 ms
Engine comparison: wasm (5000 rows)
benchmark/main.ts
89.4 ms
Engine comparison: mainThread (500 rows)
benchmark/main.ts
8.6 ms
Engine comparison: mainThread (5000 rows)
benchmark/main.ts
90.9 ms
Data transformation: no conversion (100 rows)
benchmark/main.ts
1.3 ms
Custom delimiter: PSV (100 rows)
benchmark/main.ts
637.6 µs
parseBinary.toStream(50 rows)
benchmark/main.ts
1.6 ms
parseString engine:fast (50 rows)
benchmark/main.ts
834.3 µs
Engine comparison: wasm (500 rows)
benchmark/main.ts
9.9 ms
Data transformation: type conversion (100 rows)
benchmark/main.ts
1.4 ms
Custom delimiter: TSV (100 rows)
benchmark/main.ts
648.5 µs
Field length: 10 chars (1000 rows)
benchmark/main.ts
7.2 ms
parseString.toArraySync(50 rows)
benchmark/main.ts
1.3 ms
Field length: 100 chars (1000 rows)
benchmark/main.ts
9.5 ms
Field length: 10KB (100 rows)
benchmark/main.ts
14.8 ms
Concurrent: Sequential mainThread
benchmark/main.ts
25.1 ms
parseString engine:stable (1000 rows)
benchmark/main.ts
10.7 ms
Quote ratio: 100% (1000 rows)
benchmark/main.ts
9.9 ms
parseString engine:fast (1000 rows)
benchmark/main.ts
18.2 ms
Line ending: LF (1000 rows)
benchmark/main.ts
5.5 ms
Field length: 1KB (1000 rows)
benchmark/main.ts
21.9 ms
Low-level: CSVLexer + CSVRecordAssembler (1000 rows)
benchmark/main.ts
15.1 ms
Quote ratio: 0% (1000 rows)
benchmark/main.ts
7.8 ms
Queuing: small (100 rows) - default HWM
benchmark/main.ts
15.9 ms
Queuing: large (10000 rows) - default HWM
benchmark/main.ts
1.3 s
Memory: toIterableIterator (streaming)
benchmark/main.ts
15.2 ms
Low-level: CSVLexer only (1000 rows)
benchmark/main.ts
5.8 ms
Line ending: CRLF (1000 rows)
benchmark/main.ts
5.5 ms
Quote ratio: 25% (1000 rows)
benchmark/main.ts
8 ms
Scaling: 100 rows
benchmark/main.ts
1.5 ms
Memory: toArraySync (allocate all at once)
benchmark/main.ts
15.9 ms
Queuing: medium (1000 rows) - default HWM
benchmark/main.ts
133.4 ms
Scaling: 1000 rows
benchmark/main.ts
16 ms
Quote ratio: 50% (1000 rows)
benchmark/main.ts
8 ms
© 2025 CodSpeed Technology
Home
Terms
Privacy
Docs