~/talk

State of native access in Apache Lucene

Talkat Berlin Buzzwords 2025 · 2025-06-15..06-17· [java]
links:none on file
slides:none on file

Lucene 10 adopts Java 21 and uses Project Panama to get true off-heap access via MemorySegment and fast foreign calls; the memory-mapped directory now issues madvise/fadvise hints and can preload pages, which reduces page faults and enables vectorized math (previously 4x speedups). Implementation works but is fragile: Panama APIs are preview so public APIs cannot expose them, build-time signature extraction avoids the preview classfile flag, fadvise on NIO lacks a file-handle API, and recent Linux kernels’ reclaim behavior causes unexpected swapping.

AI-written summary · about

  1. 0:00Introduction and history
  2. 2:31Evolution of Lucene
  3. 5:29Project Panama overview
  4. 10:45Solving the preview dilemma
  5. 19:19Native access implementation
  6. 28:40Ongoing work and IO constraints
  7. 32:10GPU integration challenges
  8. 33:23Development model and future
  9. 38:00Q&A and closing
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.