Talus โ Performance
Overheadโ
| Metric | Value |
|---|---|
| Kernel CPU per event | < 1 ยตs |
| Perf buffer throughput | > 1M events/sec |
| Userspace processing | ~10 ยตs/event |
| TUI render | 100ms refresh (10 FPS) |
| Memory (kernel) | < 64 KB (eBPF maps) |
| Memory (userspace) | < 10 MB (process map + history) |
Comparison with Alternativesโ
| Tool | Method | Overhead | Granularity |
|---|---|---|---|
| Talus | eBPF tracepoints | < 1% CPU | Syscall-level |
auditd | Audit framework | 2-5% CPU | Rule-based |
sysdig | ptrace/kit | 3-8% CPU | Syscall-level |
inotify | Filesystem hooks | < 1% (files only) | File-level |
lsof | /proc scan | Periodic burst | Snapshot |
Scalabilityโ
- Per-CPU perf buffers โ no lock contention between cores
- Bounded process map โ LRU eviction prevents memory growth
- Sliding window โ constant memory for heuristic (fixed-size ring buffer)
- Batch flush โ perf buffer events batched to reduce syscall overhead
Production Readinessโ
- Zero panics in kernel (all error paths return error codes)
- Graceful degradation if perf buffer is full (events dropped, not crashed)
- Rate limiting in userspace to prevent TUI overwhelm
- No data leaves the machine โ all processing local