Every other eBPF observability tool routes data to an external database. aacyn keeps it in-process — a custom C columnar store with SIMD acceleration that ingests 5M events/sec and scans 5M rows in under 300 microseconds.
All measurements from a single Minisforum UM890 Pro (Ryzen 9 8945HS, 32GB DDR5). Full methodology and reproducibility instructions in BENCHMARKS.md.
5 million events · 62MB columnar data · AVX-512 on AMD Ryzen 9 8945HS. All scans complete in under half a millisecond at p99.
Five design decisions that eliminate the bottlenecks in traditional observability pipelines.
Timestamps, durations, and error flags are stored in separate contiguous arrays — not interleaved rows. The CPU prefetcher sees a straight line through memory. No pointer chasing, no cache misses from mixed-type rows.
The entire store is backed by a memory-mapped file. The OS manages write-back to disk asynchronously. On restart, the ring buffer is recovered directly from the page cache — no replay, no WAL, no recovery log.
Events are ingested as pre-serialized FlatBuffer payloads — 16 bytes per event, no JSON parsing. The C engine reads the buffer with a bounds check and memcpy's directly into the column arrays. Zero allocation in the hot path.
Queries compile to SIMD intrinsics at build time. AVX-512 processes 16 floats per instruction; NEON processes 4. Both paths have a scalar fallback. The scan_duration_max function reads 5M floats in 286μs — that's 17.5 billion effective events/sec of scan bandwidth.
TypeScript calls into C through Bun's FFI layer with a raw pointer. No serialization, no V8 GC pressure, no context switching. The TS side passes a pointer; the C side writes directly into the output buffer. Round-trip is measured in nanoseconds.
Directionally valid comparisons from publicly documented benchmarks.
These are different workloads — ClickHouse persists to disk with full indexing; Vector routes bytes through a pipeline. aacyn's advantage is architectural: by keeping data in columnar memory and avoiding external database round-trips, it eliminates the largest sources of latency in observability pipelines. See BENCHMARKS.md for detailed apples-to-apples notes.
The same ingestion pipeline, comparing FlatBuffer binary payloads against equivalent JSON.
Everything is open source. The benchmark harness, the data generator, and the methodology are all in the repository.