Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-6889

Highlight using multiple threads

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 6.0
    • None
    • None
    • None

    Description

      I think we could gain search performance a little bit using Stream.parallel().forEach()~ which has processors awareness via f/j framework under the hood.
      Especially it would affect docList's for-loop processes, e.g. debugging, highlighting.
      It seems to me that this improvement is effective for many CPUs environment.

      My test condition:
      1. Core i5(2core 4thead), standalone Solr.
      2. q=日本&debug=true&hl=true, other parameters are here.
      3. 7171 hits / 12000 docs(taken from ja.wikipedia dump)
      4. compared to trunk, parallel streams are faster a little.

      My query execution results(QTime):

      == rows=10 ==
          trunk  patch 
      1st 236    146
      2nd 179    100
      3rd 79     72
      4th 75     53
      5th 91     80
      
      == rows=50 ==
          trunk  patch 
      1st 485    325
      2nd 225    243
      3rd 199    151
      4th 168    127
      5th 149    118
      
      == rows=100 ==
          trunk  patch 
      1st 948    607
      2nd 472    390
      3rd 237    201
      4th 256    200
      5th 224    178
      
      == rows=500 ==
          trunk  patch 
      1st 3248   2826
      2nd 1545   1067
      3rd 1563   801
      4th 1551   816
      5th 1452   777
      

      Attachments

        1. SOLR-6889.patch
          4 kB
          Shinichiro Abe

        Activity

          People

            Unassigned Unassigned
            shinichiro abe Shinichiro Abe
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: