lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael McCandless (JIRA)" <>
Subject [jira] Commented: (LUCENE-1604) Stop creating huge arrays to represent the absense of field norms
Date Tue, 14 Apr 2009 18:49:14 GMT


Michael McCandless commented on LUCENE-1604:

bq. If guys at Java HotSpot Compiler are doing their homework, checking something != null
before accessing something should come almost for free, because each access checks for null

The problem is, depending on the result of the null check, we do very different things; I
think we are relying on the CPU to correctly predict the branch, which I even wonder about
since multiple threads could be running that code with the if going different ways.  And even
a correct prediction there's still [small] added cost...

> Stop creating huge arrays to represent the absense of field norms
> -----------------------------------------------------------------
>                 Key: LUCENE-1604
>                 URL:
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: Index
>    Affects Versions: 2.9
>            Reporter: Shon Vella
>            Priority: Minor
>             Fix For: 2.9
>         Attachments: LUCENE-1604.patch
> Creating and keeping around huge arrays that hold a constant value is very inefficient
both from a heap usage standpoint and from a localility of reference standpoint. It would
be much more efficient to use null to represent a missing norms table.

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