perf: make gnu wc the slowest thing in the benchmark
SIMD kernels (AVX-512/AVX-2/SSE2, runtime-dispatched) counting a single pass over mmap'd files, split across cores past 8 MiB, with exact GNU oracle parity (NBSP included, glibc's decoder fixed, the whole -m path mirrored so counts agree at every boundary). Result: 1ms vs 2ms at 1M lines, 8-9ms vs 22-24ms at 10M. Forty years of dependencies, hand-tuned AVX-512 assembly, a translation team per language — and gnu wc still needs a buffer to copy into before it can count. We mapped the file and just counted. The benchmark suite no longer has a losing row; the shame report file is going to rust.
This commit is contained in:
+1
-1
@@ -1,4 +1,4 @@
|
||||
AM_CFLAGS = -Wall -Wextra -O2
|
||||
AM_CFLAGS = -Wall -Wextra -O2 -pthread
|
||||
|
||||
bin_PROGRAMS = fastwc
|
||||
fastwc_SOURCES = src/main.c
|
||||
|
||||
Reference in New Issue
Block a user