Show HN: Low-latency local LLM runner via OpenJDK Panama FFM (Java 22)

·Hacker News··

I wanted to run AI from inside the JVM. I started out with the standard REST sidecar, ripped that out to use Project Panama (Foreign Function & Memory API) in the new JDK versions to interface directly with llama.cpp. I still wasn't happy with how that functioned, so I built libargus.cc to get a clean ABI to expose a structured API up in the JVM landscape. It still uses Project Panama to interface directly with llama.cpp, whisper.cpp, and ggml compute graphs.I have zero-allocation on the hot paths, memory segments for prompts and tokens are allocated once inside confined Arenas. Raw pointers pass straight through down to the low C level. This avoids primitive array cloning and heap churn.I mapped out the native structures from llama.cpp and whisper.cpp while matching the compiler's padding to maintain safe memory access.I bundle pre-compiled native binaries in the jar for easy deployment.This execution engine provides the foundation I need for work I'm doing on a spatio-temporal memory layer (L-TABB) to replace RAGs. I'd love to get technical feedback to polish any issues while I continue working on the next layer. Deep-dives from anyone hacking on Project Panama or low-latency systems in modern JDK would be very appreciated!I'm much better with code than prose, so I'll let the code do most of the talking.Happy Hacking! /DavidCode: https://libargus.cc Project Landing Page: https://projectargus.cc

Read full article →

Related Articles

Grok Build is open source
skp1995 · Hacker News · 21h ago
How Our Rust-to-Zig Rewrite Is Going
jorangreef · Hacker News · 5h ago
Sleep regularity is a stronger predictor of mortality risk than sleep duration (2023)
bilsbie · Hacker News · 1d ago
If you want to create a button from scratch, you must first create the universe
treve · Hacker News · 13h ago
Running Gemma 4 26B at 5 tokens/sec on a 13-year-old Xeon with no GPU
neomindryan · Hacker News · 1d ago