NHacker Next
  • new
  • past
  • show
  • ask
  • show
  • jobs
  • submit
A cache-friendly IPv6 LPM with AVX-512 (linearized B+-tree, real BGP benchmarks) (github.com)
NooneAtAll3 36 minutes ago [-]
I wonder how this would look like in risc-v vector instructions
debugga 4 hours ago [-]
Clean-room, portable C++17 implementation of the PlanB IPv6 LPM algorithm.

Includes: - AVX-512 SIMD path + scalar fallback - Wait-free lookups with rebuild-and-swap dynamic FIB - Benchmarks on synthetic data and real RIPE RIS BGP (~254K prefixes)

Interesting result: on real BGP + uniform random lookups, a plain Patricia trie can sometimes match or beat the SIMD tree due to cache locality and early exits.

Would love feedback, especially comparisons with PopTrie / CP-Trie.

newman314 5 minutes ago [-]
I wonder if this would port nicely over to rustybgp.
Sesse__ 28 minutes ago [-]
The obvious question, I guess: How much faster are you than whatever is in the Linux kernel's FIB? (Although I assume they need RCU overhead and such. I have no idea what it all looks like internally.)
zx2c4 6 minutes ago [-]
I likewise wonder from time to time whether I should replace WireGuard's allowedips.c trie with something better: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/lin...
ozgrakkurt 1 hours ago [-]
Why detect avx512 in build system instead of using #ifdef ?
Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact
Rendered at 06:59:29 GMT+0000 (Coordinated Universal Time) with Vercel.