v0.3.1
Rewrite extractor with mmap + rayon + memchr for 5x speedup
- Memory-mapped I/O (memmap2) — zero-copy file access, no BufReader allocations
- Work-stealing parallelism (rayon) — replaces manual thread::scope chunking
- SIMD byte search (memchr) — accelerated divider and newline detection
- Byte-based progress — uses file size metadata instead of line counting,
eliminating the slow pre-count pass - Single extract delegate — extract() now calls extract_multi internally,
removing ~50 lines of duplicated logic - Multi-file scan: 22.8s → 4.3s on the same 1 GB / 16.6M line workload
- Net reduction: 118 lines removed while adding 3 dependency crates
Downloads
| Platform | File |
|---|---|
| Linux x86_64 | ulpExtractor-linux-x86_64.tar.gz |
| Linux ARM64 | ulpExtractor-linux-aarch64.tar.gz |
| macOS (Universal) | ulpExtractor-macos.tar.gz |
| Windows x86_64 | ulpExtractor-windows-x86_64.zip |
Verify
sha256sum -c checksums.txt