You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "P Eger (JIRA)" <ji...@apache.org> on 2009/04/13 20:51:15 UTC

[jira] Commented: (LUCENE-1600) Reduce usage of String.intern(), performance is terrible

    [ https://issues.apache.org/jira/browse/LUCENE-1600?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12698495#action_12698495 ] 

P Eger commented on LUCENE-1600:
--------------------------------

note that there may be other opportunities to reduce interning, i fixed it only for my specific use-case

> Reduce usage of String.intern(), performance is terrible
> --------------------------------------------------------
>
>                 Key: LUCENE-1600
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1600
>             Project: Lucene - Java
>          Issue Type: Improvement
>    Affects Versions: 2.4, 2.4.1
>         Environment: Windows Server 2003 x64
> Hotspot JDK 1.6.0_12 64-bit
>            Reporter: P Eger
>            Priority: Minor
>         Attachments: intern.png, intern_perf.patch
>
>
> I profiled a simple MatchAllDocsQuery() against ~1.5 million documents (8 fields of short text, Field.Store.YES,Field.Index.NOT_ANALYZED_NO_NORMS), then retrieved all documents via searcher.doc(i, fs). String.intern() showed up as a top hotspot (see attached screenshot), so i implemented a small optimization to not intern() for every new Field(), instead forcing the intern in the FieldInfos class and adding a optional "internName" constructor to Field. This reduced execution time for searching and iterating through all documents by 35%. Results were similar for -server and -client.
> TRUNK (2.9) w/out patch: matched 1435563 in 8884 ms/search
> TRUNK (2.9) w/patch: matched 1435563 in 5786 ms/search

-- 
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: java-dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org