kamiazya
web-csv-toolbox
BlogDocsChangelog

GitHub Actions run

9 hours ago 553d1ad feat/api-consistency-binary-stream pull_request

Compare

Base
Search a run

Head
feat!: rename binary stream APIs for consistency and add BufferSource support
#603
feat/api-consistency-binary-stream
9 hours ago
CPU Simulation

Compare
Suggested base runs: • •

Skipped (8)

Benchmarks

Binary approach: parseBinary (10KB)
benchmark/main.ts
3.7 ms
Binary approach: parseBinary (1KB)
benchmark/main.ts
515.7 µs
Field length: 10 chars (1000 rows)
benchmark/main.ts
11.5 ms
Field length: 100 chars (1000 rows)
benchmark/main.ts
13.5 ms
Binary approach: parseBinary (100KB)
benchmark/main.ts
35.8 ms
Concurrent: Parallel mainThread
benchmark/main.ts
35 ms
Field length: 1KB (1000 rows)
benchmark/main.ts
26.8 ms
Binary approach: parseBinary (1MB)
benchmark/main.ts
373 ms
Concurrent: Sequential mainThread
benchmark/main.ts
35.2 ms
Custom delimiter: PSV (100 rows)
benchmark/main.ts
1.1 ms
Low-level: CSVLexer + CSVRecordAssembler (1000 rows)
benchmark/main.ts
32.3 ms
Line ending: LF (1000 rows)
benchmark/main.ts
8.9 ms
Low-level: CSVLexer only (1000 rows)
benchmark/main.ts
22 ms
Queuing: large (10000 rows) - default HWM
benchmark/main.ts
2.2 s
Memory: toIterableIterator (streaming)
benchmark/main.ts
32.1 ms
Custom delimiter: TSV (100 rows)
benchmark/main.ts
1.1 ms
Field length: 10KB (100 rows)
benchmark/main.ts
16.7 ms
Quote ratio: 100% (1000 rows)
benchmark/main.ts
12.6 ms
Engine comparison: wasm (500 rows)
benchmark/main.ts
9.1 ms
Line ending: CRLF (1000 rows)
benchmark/main.ts
17.8 ms
Data transformation: no conversion (100 rows)
benchmark/main.ts
2.7 ms
Quote ratio: 0% (1000 rows)
benchmark/main.ts
11.6 ms
Data transformation: type conversion (100 rows)
benchmark/main.ts
2.8 ms
Queuing: medium (1000 rows) - default HWM
benchmark/main.ts
448.7 ms
Engine comparison: wasm (5000 rows)
benchmark/main.ts
84.6 ms
Engine comparison: mainThread (5000 rows)
benchmark/main.ts
174.5 ms
Queuing: small (100 rows) - default HWM
benchmark/main.ts
24.7 ms
Scaling: 1000 rows
benchmark/main.ts
29.4 ms
Scaling: 50 rows
benchmark/main.ts
1.5 ms
Stream approach: parseBinaryStream (1KB)
benchmark/main.ts
12.3 ms
Worker perf: large (10000 rows) - mainThread
benchmark/main.ts
195.4 ms
Engine comparison: mainThread (500 rows)
benchmark/main.ts
30.1 ms
Scaling: 5000 rows
benchmark/main.ts
158 ms
Stream approach: parseBinaryStream (1MB)
benchmark/main.ts
2.9 s
Quote ratio: 50% (1000 rows)
benchmark/main.ts
13.2 ms
Worker perf: medium (1000 rows) - mainThread
benchmark/main.ts
19.7 ms
parseStringStream: small (100 rows)
benchmark/main.ts
20.9 ms
parseString.toArraySync(10000 cols, 10 rows, quoted)
benchmark/main.ts
430.9 ms
Scaling: 100 rows
benchmark/main.ts
2.9 ms
Memory: toArraySync (allocate all at once)
benchmark/main.ts
33.4 ms
Quote ratio: 25% (1000 rows)
benchmark/main.ts
12.1 ms
Stream approach: parseBinaryStream (100KB)
benchmark/main.ts
314.5 ms
Stream approach: parseBinaryStream (10KB)
benchmark/main.ts
41.1 ms
Scaling: 500 rows
benchmark/main.ts
14.4 ms
parseString.toIterableIterator(50 rows)
benchmark/main.ts
2 ms
Worker perf: small (100 rows) - mainThread
benchmark/main.ts
2.1 ms
parseStringToArraySyncWASM(50 rows)
benchmark/main.ts
1.5 ms
parseString.toArraySync(50 cols, 50 rows, quoted)
benchmark/main.ts
18.5 ms
parseString engine:fast (50 rows)
benchmark/main.ts
1.3 ms
parseBinary.toStream(50 rows)
benchmark/main.ts
2 ms
parseString.toArraySync(10000 cols, 10 rows, unquoted)
benchmark/main.ts
382.5 ms
parseStringStream: medium (1000 rows)
benchmark/main.ts
262.7 ms
parseString.toArraySync(50 cols, 50 rows, unquoted)
benchmark/main.ts
10.1 ms
parseString engine:fast (1000 rows)
benchmark/main.ts
29.1 ms
parseBinary.toArraySync(50 rows)
benchmark/main.ts
1.1 ms
Worker perf: tiny (10 rows) - mainThread
benchmark/main.ts
355 µs
parseString.toStream(50 rows)
benchmark/main.ts
2.3 ms
parseBinary.toIterableIterator(50 rows)
benchmark/main.ts
993.7 µs
parseString.toArraySync(50 rows)
benchmark/main.ts
1.9 ms
parseString.toArraySync(100 cols, 50 rows, quoted)
benchmark/main.ts
42.8 ms
parseString engine:stable (1000 rows)
benchmark/main.ts
21.4 ms
parseString engine:stable (50 rows)
benchmark/main.ts
1.1 ms
parseString.toArraySync(10 cols, 50 rows, quoted)
benchmark/main.ts
3.7 ms
parseString.toArraySync(10 cols, 50 rows, unquoted)
benchmark/main.ts
2.1 ms
parseString.toArraySync(100 cols, 50 rows, unquoted)
benchmark/main.ts
14.8 ms
© 2025 CodSpeed Technology
Home Terms Privacy Docs