kamiazya
web-csv-toolbox
BlogDocsChangelog

GitHub Actions run

8 days ago eabb995 main push

Compare

Base
Search a run

Head
main
eabb995
8 days ago
CPU Simulation

Compare
Suggested base runs:

Skipped (8)

Benchmarks

Binary approach: parseBinary (100KB)
benchmark/main.ts
42.2 ms
parseString engine:stable (50 rows)
benchmark/main.ts
600 µs
parseString.toArraySync(10000 cols, 10 rows, unquoted)
benchmark/main.ts
349.4 ms
Scaling: 5000 rows
benchmark/main.ts
90.7 ms
Scaling: 500 rows
benchmark/main.ts
7.4 ms
Binary approach: parseBinary (1KB)
benchmark/main.ts
293.1 µs
Binary approach: parseBinary (10KB)
benchmark/main.ts
4.4 ms
Stream approach: parseBinaryStream (10KB)
benchmark/main.ts
51.3 ms
parseString.toArraySync(100 cols, 50 rows, unquoted)
benchmark/main.ts
7.3 ms
parseString.toArraySync(50 cols, 50 rows, unquoted)
benchmark/main.ts
3.9 ms
parseString.toArraySync(10000 cols, 10 rows, quoted)
benchmark/main.ts
244.4 ms
parseString.toArraySync(50 cols, 50 rows, quoted)
benchmark/main.ts
5.2 ms
Concurrent: Sequential mainThread
benchmark/main.ts
24.8 ms
parseString.toArraySync(10 cols, 50 rows, quoted)
benchmark/main.ts
1.2 ms
Stream approach: parseBinaryStream (1MB)
benchmark/main.ts
1.7 s
parseString.toArraySync(10 cols, 50 rows, unquoted)
benchmark/main.ts
815.2 µs
Concurrent: Parallel mainThread
benchmark/main.ts
23.9 ms
Custom delimiter: PSV (100 rows)
benchmark/main.ts
637.2 µs
parseString.toIterableIterator(50 rows)
benchmark/main.ts
1.4 ms
parseStringStream: medium (1000 rows)
benchmark/main.ts
81.2 ms
Custom delimiter: TSV (100 rows)
benchmark/main.ts
651 µs
parseString.toArraySync(50 rows)
benchmark/main.ts
1.3 ms
Stream approach: parseBinaryStream (1KB)
benchmark/main.ts
5.4 ms
parseString.toStream(50 rows)
benchmark/main.ts
4.2 ms
parseStringStream: small (100 rows)
benchmark/main.ts
19 ms
Worker perf: medium (1000 rows) - mainThread
benchmark/main.ts
28.8 ms
Data transformation: no conversion (100 rows)
benchmark/main.ts
1.3 ms
parseStringToArraySyncWASM(50 rows)
benchmark/main.ts
1.3 ms
Worker perf: small (100 rows) - mainThread
benchmark/main.ts
1.3 ms
Field length: 1KB (1000 rows)
benchmark/main.ts
21.1 ms
Engine comparison: wasm (500 rows)
benchmark/main.ts
9.8 ms
Worker perf: large (10000 rows) - mainThread
benchmark/main.ts
121.7 ms
Data transformation: type conversion (100 rows)
benchmark/main.ts
1.4 ms
Binary approach: parseBinary (1MB)
benchmark/main.ts
198.9 ms
parseBinary.toStream(50 rows)
benchmark/main.ts
1.6 ms
Field length: 10KB (100 rows)
benchmark/main.ts
14.8 ms
Engine comparison: mainThread (5000 rows)
benchmark/main.ts
85.1 ms
parseBinary.toArraySync(50 rows)
benchmark/main.ts
537.9 µs
Engine comparison: wasm (5000 rows)
benchmark/main.ts
98.2 ms
Engine comparison: mainThread (500 rows)
benchmark/main.ts
8.9 ms
Memory: toArraySync (allocate all at once)
benchmark/main.ts
15.4 ms
parseString engine:fast (50 rows)
benchmark/main.ts
852.5 µs
Low-level: CSVLexer + CSVRecordAssembler (1000 rows)
benchmark/main.ts
15.4 ms
parseString engine:stable (1000 rows)
benchmark/main.ts
10.1 ms
Worker perf: tiny (10 rows) - mainThread
benchmark/main.ts
372.9 µs
parseBinary.toIterableIterator(50 rows)
benchmark/main.ts
1.8 ms
Line ending: CRLF (1000 rows)
benchmark/main.ts
6.3 ms
Field length: 100 chars (1000 rows)
benchmark/main.ts
8.4 ms
parseString engine:fast (1000 rows)
benchmark/main.ts
52.4 ms
Line ending: LF (1000 rows)
benchmark/main.ts
5.9 ms
Field length: 10 chars (1000 rows)
benchmark/main.ts
7.8 ms
Queuing: large (10000 rows) - default HWM
benchmark/main.ts
1.3 s
Quote ratio: 0% (1000 rows)
benchmark/main.ts
7.3 ms
Low-level: CSVLexer only (1000 rows)
benchmark/main.ts
5.8 ms
Queuing: medium (1000 rows) - default HWM
benchmark/main.ts
133.7 ms
Memory: toIterableIterator (streaming)
benchmark/main.ts
15.2 ms
Quote ratio: 25% (1000 rows)
benchmark/main.ts
8.7 ms
Scaling: 1000 rows
benchmark/main.ts
17 ms
Quote ratio: 50% (1000 rows)
benchmark/main.ts
8.8 ms
Scaling: 50 rows
benchmark/main.ts
809.7 µs
Queuing: small (100 rows) - default HWM
benchmark/main.ts
15.5 ms
Quote ratio: 100% (1000 rows)
benchmark/main.ts
9.3 ms
Scaling: 100 rows
benchmark/main.ts
1.5 ms
parseString.toArraySync(100 cols, 50 rows, quoted)
benchmark/main.ts
11.1 ms
Stream approach: parseBinaryStream (100KB)
benchmark/main.ts
166.4 ms
© 2025 CodSpeed Technology
Home Terms Privacy Docs