lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Yonik Seeley (JIRA)" <>
Subject [jira] Updated: (LUCENE-2735) First Cut at GroupVarInt with FixedIntBlockIndexInput / Output
Date Tue, 02 Nov 2010 19:42:24 GMT


Yonik Seeley updated LUCENE-2735:

    Attachment: LUCENE-2735_alt.patch

Here's an update that removes array lookups in favor of calculating the lengths, in addition
to a bunch of other little optimizations that may or may not matter (such as removing unnecessary
masks, and checking single-byte values first rather than 4 byte values during encoding).

The lookup table would have taken substantial memory: 256*(64+4*4) == 20K and would have taken
up a good fraction of L1 cache (perhaps not detectable in a micro-benchmark, but perhaps significant
in a full application).

Anyway - I made no attempt at benchmarking it, so YMMV.

> First Cut at GroupVarInt with FixedIntBlockIndexInput / Output
> --------------------------------------------------------------
>                 Key: LUCENE-2735
>                 URL:
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: Index
>    Affects Versions: 4.0
>            Reporter: Simon Willnauer
>            Priority: Minor
>             Fix For: 4.0
>         Attachments: LUCENE-2735.patch, LUCENE-2735_alt.patch
> I have hacked together a FixedIntBlockIndex impl with Group VarInt encoding - this does
way worse than standard codec in benchmarks but I guess that is mainly due to the FixedIntBlockIndex
limitations. Once LUCENE-2723 is in / or builds with trunk again I will update and run some
tests. The isolated microbenchmark shows that there could be improvements over vint even in
java though and I am sure we can make it faster impl. wise.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message