Charles KWON OhJun
3fa553d3ed
perf: DBF mmap — zero-copy record reads, SCAN 2-3x faster
syscall.Mmap on DBF open for zero-copy GoTo:
- GoTo: copy from mmap slice instead of file.ReadAt syscall
- Eliminates kernel context switch per record read
- Unmap before Append (file grows), Close, Flush
- Re-mmap after Flush
Benchmark (ext4, home dir):
10K SCAN: 4ms → 2ms (Harbour 1ms = 2x)
10K DUPKEY: 6ms → 4ms (Harbour 4ms = 1x!)
10K DELSCAN: 6ms → 2ms (Harbour 2ms = 1x!)
50K SCAN: 26ms → 15ms (42% faster)
50K DELSCAN: 29ms → 17ms (Harbour 17ms = 1x!)
50K DUPKEY: 41ms → 29ms (Harbour 23ms = 1.3x)
CDX SCAN: 13ms → 4ms (Harbour 6ms — FASTER!)
CDX SCOPE: 9ms → 3ms (Harbour 4ms — FASTER!)
82/82 stress PASS. All unit tests PASS.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 19:06:21 +09:00
..
2026-04-02 17:32:07 +09:00
2026-03-31 09:41:50 +09:00
2026-04-07 19:06:21 +09:00
2026-03-31 09:41:50 +09:00
2026-03-31 09:41:50 +09:00
2026-04-07 09:22:05 +09:00
2026-03-31 09:41:50 +09:00
2026-03-31 09:41:50 +09:00
2026-03-31 09:41:50 +09:00