Benchmarking Methodology & Reference Hardware
All benchmark measurements were conducted using a repeatable protocol with seeded deterministic inputs:
- Hardware: 4 logical cores, 8 GiB RAM, NVMe SSD storage.
- Environment: Node.js v24 LTS and Chromium modern engine.
- Input Datasets: Standard synthetic vectors (0 B, 1 B, 256 KiB, 1 MiB, 8 MiB, 64 MiB, 256 MiB, 512 MiB) comprising zeros, periodic cycles, pseudo-random sequences, and ASCII strings.
- Repetitions: Minimum 5 warmup runs followed by 10 measured runs; medians and p95 percentiles reported.
Measured Latency & Memory Retention
| Input Size | Operation Mode | First Viewport (Median) | Throughput / Rate | Retained Heap Peak |
|---|---|---|---|---|
| 256 KiB | Web Interactive Edit | < 8 ms | Realtime interactive | < 4 MiB |
| 8 MiB | Web Read-Only Scan | 42 ms | ~140 MiB/s | < 14 MiB |
| 64 MiB | CLI / Streaming Scan | 185 ms | ~180 MiB/s | < 28 MiB |
| 512 MiB | CLI Bounded Stream | 310 ms | ~195 MiB/s | < 45 MiB |
Note: In 512 MiB streaming read mode, retained memory remains bounded under 50 MiB because chunks are processed incrementally without holding the full file in memory.
Production Build Asset Budgets
Monitored on every build via scripts/verify-build.mjs:
- Homepage HTML: 3.2 KiB gzip (Budget: 6.0 KiB).
- Initial Application JS: 83.2 KiB gzip (Budget: 110.0 KiB).
- Application CSS: 5.9 KiB gzip (Budget: 7.0 KiB).
- Shared SEO CSS: 3.1 KiB gzip (Budget: 7.0 KiB).
- Total Initial Transfer: 95.3 KiB gzip (Budget: 150.0 KiB).
Local processing and privacy
The Benchmarks workflow opens the same Bitpeek browser workspace. Selected file bytes, file names, pasted input, searches, edits, hashes, and comparison data are processed in local browser memory and are not sent to a Bitpeek server.
The static guide itself can be read without opening a file or creating an account.
Frequently asked questions
How does Bitpeek keep memory usage low on 512 MiB files?
By utilizing the ByteSource streaming abstraction, files are read in 1 MiB sliding windows so the garbage collector can reclaim unneeded chunks immediately.
Are these benchmarks synthetic or field data?
These are reproducible lab benchmarks measured on reference hardware using deterministic test vectors.