Adrien Grand (@jpountz) header
Adrien Grand (@jpountz) profile picture

Engineer at @turbopuffer, Lucene committer

Caen, France
Joined April 2009
Photo by Adrien Grand (@jpountz)Photo by Adrien Grand (@jpountz)Photo by Adrien Grand (@jpountz)Photo by Adrien Grand (@jpountz)Photo by Adrien Grand (@jpountz)Photo by Adrien Grand (@jpountz)Photo by Adrien Grand (@jpountz)Photo by Adrien Grand (@jpountz)Photo by Adrien Grand (@jpountz)Photo by Adrien Grand (@jpountz)
I wrote this post a few months ago but held off on sharing it because it takes a lot of shortcuts. Today, colleagues asked me why Lucene uses segments, I walked them through it, and it clicked. So here it is :) jpountz.github.io/2026/04/19…
5
25
1
222
7,497
Adrien Grand retweeted
Working on that blog post as fast as I can ;). Excited about this one. Dynamic rescoring, no wasted compute by static oversampling, spending compute for recall only when necessary.
binary quantization lets tpuf store & score more vectors in RAM. to keep recall high, we rescore full-precision candidates from SSD we cut vector search latency up to 4.3x on low-mem VMs by dynamically pruning rescore candidates less rescoring→ fewer SSD reads→ faster search
1
2
4
436
One thing I've come to appreciate while working on v3 (turbopuffer.com/v3) is how much easier it is to change the underlying storage/query engine with a pure SaaS product.
5
2
2
88
6,589
Two new implementations of the vectorized variant of block-max MAXSCORE that I introduced in Lucene in 2025 were just released: in ParadeDB (github.com/paradedb/tantivy/…) and Luxir (github.com/luxir-search/luxi…). It's slowly replacing block max WAND as the go-to algorithm for text search.
3
3
42
3,191
Adrien Grand retweeted
we're changing tpuf's storage architecture so we can keep pushing the search frontier the new engine (v3) now passes CI, but we have to make it fast before we ship it to prod we're grinding query plans in public until v3 wins on everything follow along: turbopuffer.com/v3
22
18
11
337
85,675
Adrien Grand retweeted
I am glad to see seminal & long standing projects like Apache Lucene adopting sane & simple AI policies for the community. Use LLMs for code, not communication. We are all tired of talking to an LLM with just somebody copy-pasting in the middle.
3
7
317
Adrien Grand retweeted
Replying to @javisantana
If a library has obvious bugs I don't "prompt" the maintainer to fix it. It has to go. OTOH I have read more books than code but I the impact of reading code has been bigger. I spent 4 hours on how Lucene stores data and I have used that in several places. I should do it more.
1
2
691
I never considered the challenge of replicating Git repositories before, it's fascinating how similar it is to Lucene indexes: - NFS: doesn't work - storing data in Cassandra (Lucandra): too slow to be practical - application-level replication of operations or segments: works
We're making Git hosting more reliable, performant, and scalable. This post traces 20 years of Git infrastructure and explains how that history led us to design and operate our Git storage, Origin, as if it were a database. cursor.com/blog/git-at-any-s…
2
1
60
6,421
Adrien Grand retweeted
I did a write-up of things I learned during my 10-year tenure at GitHub, the things that worked, and what we're trying to improve in Origin. The scale of the challenge is staggering, but I really want people to know we're putting a lot of thought and care into it.
We're making Git hosting more reliable, performant, and scalable. This post traces 20 years of Git infrastructure and explains how that history led us to design and operate our Git storage, Origin, as if it were a database. cursor.com/blog/git-at-any-s…
58
100
28
1,403
179,101
Today we're announcing our $12.5M seed, led by B Capital and Speedinvest. In 8 months, a small team built a news index that's faster and more accurate than any search API we tested, and that hands agents full, fresh documents instead of snippets.
7
5
3
48
2,314
Adrien Grand retweeted
Creator of Sqlite on pull requests: "You say, oh, it's free. No. It's not free. What you're doing is asking me ... to maintain it for you, to to document it for you, to test it for you, to maintain it for you for the next 25 years. That's not free." Yep. Wise words from a wiser man than me. I've told people for the past decade and I have recent posts on here saying the same: the merge button is the easy part. Its the decade+ (Richard says 25 years) that follows where you've accepted the transfer of maintenance thats hard.
59
390
29
5,949
286,666
Adrien Grand retweeted
Does a lexical retriever suffice for agentic search when agents can keep refining their queries? As LLMs become more capable in agentic loops, agents can continuously refine their actions based on environmental feedback. We couldn’t help but ask the question above.
1
2
1
20
1,891
Adrien Grand retweeted
BM25 efficiently scores text, but relevance often depends on more than text (recency, popularity, PageRank) we score non-text attributes as clauses in the same MAXSCORE plan that evaluates BM25 → better first-stage relevance, still scales to 100M+ tpuf.link/rank-by-attr
12
3
124
21,345
Adrien Grand retweeted
Full-text search was solved in 2016, Lucene had owned the space for a decade. Rewriting it in Rust, as a side project, on a plane sounds like a terrible idea. But Paul Masurel (@fulmicoton) is a special kind of person. His side project became Tantivy, now a widely used (and very competitive) search library that's even helping improve Lucene. We sat down and talked about challenging solved domains, open-source competition done right, and why long-fermented frustration is an underrated driver. paradedb.com/blog/tantivy-in…
9
1
36
5,599
I was curious how SereneDB manages to perform well, on long queries in particular. Answer: it implemented the same block-at-a-time vectorized MAXSCORE algorithm as Lucene: github.com/serenedb/serenedb…! To my knowledge, this is the third implementation of this algorithm, very exciting.
1
1
1
10
1,033
Adrien Grand retweeted
Here comes a new challenger. iresearch an engine implemented by SereneDB enters the contest with a bang! tantivy-search.github.io/ben…
5
1
6
721
Adrien Grand retweeted
btw hiring for a systems eng. role at @turbopuffer soon on the text team, you’d work closely w/ @jpountz and I on billion-scale {storage,ranking,query eval}. DMs open!
9
20
6
212
37,732