kamiazya
web-csv-toolbox
BlogDocsChangelog

GitHub Actions run

11 days ago 25d49ee main push

Compare

Base
Search a run

Head
main
25d49ee
11 days ago
CPU Simulation

Compare
Suggested base runs:

Skipped (8)

Benchmarks

Binary approach: parseBinary (1KB)
benchmark/main.ts
289.7 µs
Concurrent: Parallel mainThread
benchmark/main.ts
23.8 ms
Scaling: 5000 rows
benchmark/main.ts
123.8 ms
Scaling: 500 rows
benchmark/main.ts
7.5 ms
Stream approach: parseBinaryStream (100KB)
benchmark/main.ts
200.1 ms
Binary approach: parseBinary (100KB)
benchmark/main.ts
19.8 ms
Binary approach: parseBinary (1MB)
benchmark/main.ts
196.3 ms
Data transformation: no conversion (100 rows)
benchmark/main.ts
1.3 ms
Stream approach: parseBinaryStream (10KB)
benchmark/main.ts
24.7 ms
Custom delimiter: TSV (100 rows)
benchmark/main.ts
655.7 µs
Stream approach: parseBinaryStream (1KB)
benchmark/main.ts
2.8 ms
Custom delimiter: PSV (100 rows)
benchmark/main.ts
639 µs
parseBinary.toArraySync(50 rows)
benchmark/main.ts
1 ms
Binary approach: parseBinary (10KB)
benchmark/main.ts
2 ms
Engine comparison: mainThread (5000 rows)
benchmark/main.ts
86.2 ms
Concurrent: Sequential mainThread
benchmark/main.ts
24.8 ms
Worker perf: medium (1000 rows) - mainThread
benchmark/main.ts
13.6 ms
Data transformation: type conversion (100 rows)
benchmark/main.ts
1.4 ms
Engine comparison: mainThread (500 rows)
benchmark/main.ts
9 ms
Engine comparison: wasm (500 rows)
benchmark/main.ts
10.1 ms
Worker perf: small (100 rows) - mainThread
benchmark/main.ts
1.3 ms
parseString engine:fast (1000 rows)
benchmark/main.ts
46.2 ms
Stream approach: parseBinaryStream (1MB)
benchmark/main.ts
3.1 s
Engine comparison: wasm (5000 rows)
benchmark/main.ts
87.6 ms
parseBinary.toIterableIterator(50 rows)
benchmark/main.ts
2.3 ms
Worker perf: large (10000 rows) - mainThread
benchmark/main.ts
121.2 ms
Worker perf: tiny (10 rows) - mainThread
benchmark/main.ts
373.9 µs
Field length: 10KB (100 rows)
benchmark/main.ts
15.7 ms
Field length: 10 chars (1000 rows)
benchmark/main.ts
15.3 ms
parseBinary.toStream(50 rows)
benchmark/main.ts
2.6 ms
Line ending: CRLF (1000 rows)
benchmark/main.ts
5.6 ms
parseString.toArraySync(50 cols, 50 rows, unquoted)
benchmark/main.ts
8.7 ms
Field length: 100 chars (1000 rows)
benchmark/main.ts
17.4 ms
parseString.toArraySync(50 rows)
benchmark/main.ts
1.7 ms
Low-level: CSVLexer + CSVRecordAssembler (1000 rows)
benchmark/main.ts
15.3 ms
Memory: toArraySync (allocate all at once)
benchmark/main.ts
15.8 ms
parseString engine:stable (50 rows)
benchmark/main.ts
1.2 ms
Line ending: LF (1000 rows)
benchmark/main.ts
7.7 ms
parseStringStream: medium (1000 rows)
benchmark/main.ts
110.5 ms
parseStringStream: small (100 rows)
benchmark/main.ts
20.3 ms
Field length: 1KB (1000 rows)
benchmark/main.ts
29.4 ms
parseStringToArraySyncWASM(50 rows)
benchmark/main.ts
1.3 ms
parseString.toArraySync(50 cols, 50 rows, quoted)
benchmark/main.ts
5.3 ms
parseString.toIterableIterator(50 rows)
benchmark/main.ts
2.1 ms
Memory: toIterableIterator (streaming)
benchmark/main.ts
15.2 ms
Low-level: CSVLexer only (1000 rows)
benchmark/main.ts
5.8 ms
parseString.toStream(50 rows)
benchmark/main.ts
5.2 ms
parseString.toArraySync(10 cols, 50 rows, quoted)
benchmark/main.ts
2.3 ms
parseString engine:stable (1000 rows)
benchmark/main.ts
20.7 ms
Scaling: 1000 rows
benchmark/main.ts
16.1 ms
parseString.toArraySync(10 cols, 50 rows, unquoted)
benchmark/main.ts
1.9 ms
Quote ratio: 50% (1000 rows)
benchmark/main.ts
9.4 ms
Scaling: 100 rows
benchmark/main.ts
1.6 ms
Scaling: 50 rows
benchmark/main.ts
815.2 µs
Quote ratio: 0% (1000 rows)
benchmark/main.ts
15.9 ms
parseString.toArraySync(100 cols, 50 rows, quoted)
benchmark/main.ts
12.4 ms
Queuing: medium (1000 rows) - default HWM
benchmark/main.ts
445.9 ms
parseString engine:fast (50 rows)
benchmark/main.ts
1 ms
Queuing: small (100 rows) - default HWM
benchmark/main.ts
18.4 ms
Quote ratio: 100% (1000 rows)
benchmark/main.ts
12.2 ms
Quote ratio: 25% (1000 rows)
benchmark/main.ts
16.3 ms
parseString.toArraySync(100 cols, 50 rows, unquoted)
benchmark/main.ts
16.1 ms
parseString.toArraySync(10000 cols, 10 rows, unquoted)
benchmark/main.ts
171.3 ms
parseString.toArraySync(10000 cols, 10 rows, quoted)
benchmark/main.ts
279 ms
Queuing: large (10000 rows) - default HWM
benchmark/main.ts
2.3 s
© 2025 CodSpeed Technology
Home Terms Privacy Docs