apache / apache/lucene

SIMD-based decoding of BKD docIds [LUCENE-9368]

Open
#10,408 0 comments 0 reactions 0 assignees View on GitHub
legacy-jira-priority:Minor type:enhancement
Dominant language
Java
Stars
3.6k
Forks
1.4k
Avg merge
2d 11h
Merged PRs (30d)
88

Description

In #10129 we changed the way how we constructed Kd trees to always have full leaves. This open the possibility to use more efficient decoding techniques for docIds, similar to what we do in postings.

 

This issue explores adding SIMD-based techniques when encoding docIds in the BKD tree.

---
Migrated from [LUCENE-9368](https://issues.apache.org/jira/browse/LUCENE-9368) by Ignacio Vera (@iverase), updated Feb 04 2022
Pull requests: https://github.com/apache/lucene-solr/pull/1503, https://github.com/apache/lucene-solr/pull/1538

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the full-leaf change in #10129 and the two migrated pull requests, #1503 and #1538. Then compare BKD docId encoding with the SIMD-related techniques used in postings. Done means adding and validating a SIMD-based encoding approach for docIds in BKD trees.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
search
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.