[
https://issues.apache.org/jira/browse/LUCENE-1997?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12770981#action_12770981
]
Yonik Seeley edited comment on LUCENE-1997 at 10/29/09 5:34 PM:
----------------------------------------------------------------
Linux odin 2.6.28-16-generic #55-Ubuntu SMP Tue Oct 20 19:48:32 UTC 2009 x86_64
GNU/Linux
Java(TM) SE Runtime Environment (build 1.6.0_14-b08)
java -Xms2048M -Xmx2048M -Xbatch -server
Phenom II x4 3GHz (dynamic freq scaling turned off)
||Source||Seg size||Query||Tot hits||Sort||Top N||QPS old||QPS new||Pct change||
|random|balanced|<all>|5000000|rand
int|10|24.50|32.66|{color:green}33.3%{color}|
|random|balanced|<all>|5000000|rand
int|25|24.48|31.94|{color:green}30.5%{color}|
|random|balanced|<all>|5000000|rand
int|50|28.86|31.79|{color:green}10.2%{color}|
|random|balanced|<all>|5000000|rand int|100|29.04|28.63|{color:red}-1.4%{color}|
|random|balanced|<all>|5000000|rand
int|500|28.08|23.21|{color:red}-17.3%{color}|
|random|balanced|<all>|5000000|rand
int|1000|25.20|19.04|{color:red}-24.4%{color}|
|random|balanced|<all>|5000000|rand
string|10|28.34|26.86|{color:red}-5.2%{color}|
|random|balanced|<all>|5000000|rand
string|25|26.24|26.60|{color:green}1.4%{color}|
|random|balanced|<all>|5000000|rand
string|50|18.33|25.94|{color:green}41.5%{color}|
|random|balanced|<all>|5000000|rand
string|100|17.99|25.77|{color:green}43.2%{color}|
|random|balanced|<all>|5000000|rand
string|500|17.24|21.80|{color:green}26.5%{color}|
|random|balanced|<all>|5000000|rand
string|1000|16.30|18.37|{color:green}12.7%{color}|
|random|balanced|<all>|5000000|country|10|25.15|26.85|{color:green}6.8%{color}|
|random|balanced|<all>|5000000|country|25|25.46|26.82|{color:green}5.3%{color}|
|random|balanced|<all>|5000000|country|50|18.02|26.04|{color:green}44.5%{color}|
|random|balanced|<all>|5000000|country|100|18.10|26.23|{color:green}44.9%{color}|
|random|balanced|<all>|5000000|country|500|17.63|22.34|{color:green}26.7%{color}|
|random|balanced|<all>|5000000|country|1000|17.33|18.46|{color:green}6.5%{color}|
|random|log|<all>|5000000|rand int|10|24.60|32.69|{color:green}32.9%{color}|
|random|log|<all>|5000000|rand int|25|29.35|32.85|{color:green}11.9%{color}|
|random|log|<all>|5000000|rand int|50|29.25|32.23|{color:green}10.2%{color}|
|random|log|<all>|5000000|rand int|100|29.26|28.87|{color:red}-1.3%{color}|
|random|log|<all>|5000000|rand int|500|28.30|24.86|{color:red}-12.2%{color}|
|random|log|<all>|5000000|rand int|1000|25.17|21.14|{color:red}-16.0%{color}|
|random|log|<all>|5000000|rand string|10|25.27|26.96|{color:green}6.7%{color}|
|random|log|<all>|5000000|rand string|25|26.32|26.95|{color:green}2.4%{color}|
|random|log|<all>|5000000|rand string|50|18.28|26.23|{color:green}43.5%{color}|
|random|log|<all>|5000000|rand string|100|18.06|26.23|{color:green}45.2%{color}|
|random|log|<all>|5000000|rand string|500|17.40|22.79|{color:green}31.0%{color}|
|random|log|<all>|5000000|rand
string|1000|16.45|19.94|{color:green}21.2%{color}|
|random|log|<all>|5000000|country|10|25.27|26.89|{color:green}6.4%{color}|
|random|log|<all>|5000000|country|25|27.13|26.84|{color:red}-1.1%{color}|
|random|log|<all>|5000000|country|50|26.50|26.17|{color:red}-1.2%{color}|
|random|log|<all>|5000000|country|100|18.00|26.42|{color:green}46.8%{color}|
|random|log|<all>|5000000|country|500|17.75|23.08|{color:green}30.0%{color}|
|random|log|<all>|5000000|country|1000|17.41|20.25|{color:green}16.3%{color}|
Same setup, but no -Xbatch (I've found it slower sometimes):
java -Xms2048M -Xmx2048M -server
||Source||Seg size||Query||Tot hits||Sort||Top N||QPS old||QPS new||Pct change||
|random|balanced|<all>|5000000|rand int|10|27.83|22.38|{color:red}-19.6%{color}|
|random|balanced|<all>|5000000|rand int|25|25.91|23.05|{color:red}-11.0%{color}|
|random|balanced|<all>|5000000|rand int|50|28.72|22.78|{color:red}-20.7%{color}|
|random|balanced|<all>|5000000|rand
int|100|28.65|22.12|{color:red}-22.8%{color}|
|random|balanced|<all>|5000000|rand
int|500|28.21|18.96|{color:red}-32.8%{color}|
|random|balanced|<all>|5000000|rand
int|1000|25.73|16.18|{color:red}-37.1%{color}|
|random|balanced|<all>|5000000|rand
string|10|27.83|21.81|{color:red}-21.6%{color}|
|random|balanced|<all>|5000000|rand
string|25|23.30|22.30|{color:red}-4.3%{color}|
|random|balanced|<all>|5000000|rand
string|50|19.81|22.05|{color:green}11.3%{color}|
|random|balanced|<all>|5000000|rand
string|100|19.70|22.04|{color:green}11.9%{color}|
|random|balanced|<all>|5000000|rand
string|500|18.77|18.84|{color:green}0.4%{color}|
|random|balanced|<all>|5000000|rand
string|1000|17.76|16.21|{color:red}-8.7%{color}|
|random|balanced|<all>|5000000|country|10|26.25|21.85|{color:red}-16.8%{color}|
|random|balanced|<all>|5000000|country|25|26.36|22.30|{color:red}-15.4%{color}|
|random|balanced|<all>|5000000|country|50|20.04|22.17|{color:green}10.6%{color}|
|random|balanced|<all>|5000000|country|100|19.44|22.12|{color:green}13.8%{color}|
|random|balanced|<all>|5000000|country|500|19.38|19.45|{color:green}0.4%{color}|
|random|balanced|<all>|5000000|country|1000|19.00|16.41|{color:red}-13.6%{color}|
|random|log|<all>|5000000|rand int|10|27.89|22.25|{color:red}-20.2%{color}|
|random|log|<all>|5000000|rand int|25|29.01|23.16|{color:red}-20.2%{color}|
|random|log|<all>|5000000|rand int|50|28.79|22.29|{color:red}-22.6%{color}|
|random|log|<all>|5000000|rand int|100|29.51|22.21|{color:red}-24.7%{color}|
|random|log|<all>|5000000|rand int|500|28.43|19.60|{color:red}-31.1%{color}|
|random|log|<all>|5000000|rand int|1000|25.74|17.31|{color:red}-32.8%{color}|
|random|log|<all>|5000000|rand string|10|27.64|22.05|{color:red}-20.2%{color}|
|random|log|<all>|5000000|rand string|25|24.33|22.23|{color:red}-8.6%{color}|
|random|log|<all>|5000000|rand string|50|19.86|22.31|{color:green}12.3%{color}|
|random|log|<all>|5000000|rand string|100|19.67|21.99|{color:green}11.8%{color}|
|random|log|<all>|5000000|rand string|500|19.07|19.65|{color:green}3.0%{color}|
|random|log|<all>|5000000|rand string|1000|17.91|17.33|{color:red}-3.2%{color}|
|random|log|<all>|5000000|country|10|26.54|22.31|{color:red}-15.9%{color}|
|random|log|<all>|5000000|country|25|26.66|21.77|{color:red}-18.3%{color}|
|random|log|<all>|5000000|country|50|26.65|22.33|{color:red}-16.2%{color}|
|random|log|<all>|5000000|country|100|19.48|22.08|{color:green}13.3%{color}|
|random|log|<all>|5000000|country|500|19.21|19.74|{color:green}2.8%{color}|
|random|log|<all>|5000000|country|1000|18.81|17.70|{color:red}-5.9%{color}|
was (Author: [email protected]):
Linux odin 2.6.28-16-generic #55-Ubuntu SMP Tue Oct 20 19:48:32 UTC 2009
x86_64 GNU/Linux
Java(TM) SE Runtime Environment (build 1.6.0_14-b08)
Phenom II x4 3GHz (dynamic freq scaling turned off)
||Source||Seg size||Query||Tot hits||Sort||Top N||QPS old||QPS new||Pct change||
|random|balanced|<all>|5000000|rand
int|10|24.50|32.66|{color:green}33.3%{color}|
|random|balanced|<all>|5000000|rand
int|25|24.48|31.94|{color:green}30.5%{color}|
|random|balanced|<all>|5000000|rand
int|50|28.86|31.79|{color:green}10.2%{color}|
|random|balanced|<all>|5000000|rand int|100|29.04|28.63|{color:red}-1.4%{color}|
|random|balanced|<all>|5000000|rand
int|500|28.08|23.21|{color:red}-17.3%{color}|
|random|balanced|<all>|5000000|rand
int|1000|25.20|19.04|{color:red}-24.4%{color}|
|random|balanced|<all>|5000000|rand
string|10|28.34|26.86|{color:red}-5.2%{color}|
|random|balanced|<all>|5000000|rand
string|25|26.24|26.60|{color:green}1.4%{color}|
|random|balanced|<all>|5000000|rand
string|50|18.33|25.94|{color:green}41.5%{color}|
|random|balanced|<all>|5000000|rand
string|100|17.99|25.77|{color:green}43.2%{color}|
|random|balanced|<all>|5000000|rand
string|500|17.24|21.80|{color:green}26.5%{color}|
|random|balanced|<all>|5000000|rand
string|1000|16.30|18.37|{color:green}12.7%{color}|
|random|balanced|<all>|5000000|country|10|25.15|26.85|{color:green}6.8%{color}|
|random|balanced|<all>|5000000|country|25|25.46|26.82|{color:green}5.3%{color}|
|random|balanced|<all>|5000000|country|50|18.02|26.04|{color:green}44.5%{color}|
|random|balanced|<all>|5000000|country|100|18.10|26.23|{color:green}44.9%{color}|
|random|balanced|<all>|5000000|country|500|17.63|22.34|{color:green}26.7%{color}|
|random|balanced|<all>|5000000|country|1000|17.33|18.46|{color:green}6.5%{color}|
|random|log|<all>|5000000|rand int|10|24.60|32.69|{color:green}32.9%{color}|
|random|log|<all>|5000000|rand int|25|29.35|32.85|{color:green}11.9%{color}|
|random|log|<all>|5000000|rand int|50|29.25|32.23|{color:green}10.2%{color}|
|random|log|<all>|5000000|rand int|100|29.26|28.87|{color:red}-1.3%{color}|
|random|log|<all>|5000000|rand int|500|28.30|24.86|{color:red}-12.2%{color}|
|random|log|<all>|5000000|rand int|1000|25.17|21.14|{color:red}-16.0%{color}|
|random|log|<all>|5000000|rand string|10|25.27|26.96|{color:green}6.7%{color}|
|random|log|<all>|5000000|rand string|25|26.32|26.95|{color:green}2.4%{color}|
|random|log|<all>|5000000|rand string|50|18.28|26.23|{color:green}43.5%{color}|
|random|log|<all>|5000000|rand string|100|18.06|26.23|{color:green}45.2%{color}|
|random|log|<all>|5000000|rand string|500|17.40|22.79|{color:green}31.0%{color}|
|random|log|<all>|5000000|rand
string|1000|16.45|19.94|{color:green}21.2%{color}|
|random|log|<all>|5000000|country|10|25.27|26.89|{color:green}6.4%{color}|
|random|log|<all>|5000000|country|25|27.13|26.84|{color:red}-1.1%{color}|
|random|log|<all>|5000000|country|50|26.50|26.17|{color:red}-1.2%{color}|
|random|log|<all>|5000000|country|100|18.00|26.42|{color:green}46.8%{color}|
|random|log|<all>|5000000|country|500|17.75|23.08|{color:green}30.0%{color}|
|random|log|<all>|5000000|country|1000|17.41|20.25|{color:green}16.3%{color}|
> Explore performance of multi-PQ vs single-PQ sorting API
> --------------------------------------------------------
>
> Key: LUCENE-1997
> URL: https://issues.apache.org/jira/browse/LUCENE-1997
> Project: Lucene - Java
> Issue Type: Improvement
> Components: Search
> Affects Versions: 2.9
> Reporter: Michael McCandless
> Assignee: Michael McCandless
> Attachments: LUCENE-1997.patch, LUCENE-1997.patch, LUCENE-1997.patch,
> LUCENE-1997.patch, LUCENE-1997.patch, LUCENE-1997.patch, LUCENE-1997.patch,
> LUCENE-1997.patch
>
>
> Spinoff from recent "lucene 2.9 sorting algorithm" thread on java-dev,
> where a simpler (non-segment-based) comparator API is proposed that
> gathers results into multiple PQs (one per segment) and then merges
> them in the end.
> I started from John's multi-PQ code and worked it into
> contrib/benchmark so that we could run perf tests. Then I generified
> the Python script I use for running search benchmarks (in
> contrib/benchmark/sortBench.py).
> The script first creates indexes with 1M docs (based on
> SortableSingleDocSource, and based on wikipedia, if available). Then
> it runs various combinations:
> * Index with 20 balanced segments vs index with the "normal" log
> segment size
> * Queries with different numbers of hits (only for wikipedia index)
> * Different top N
> * Different sorts (by title, for wikipedia, and by random string,
> random int, and country for the random index)
> For each test, 7 search rounds are run and the best QPS is kept. The
> script runs singlePQ then multiPQ, and records the resulting best QPS
> for each and produces table (in Jira format) as output.
--
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: [email protected]
For additional commands, e-mail: [email protected]