[ 
https://issues.apache.org/jira/browse/HIVE-17147?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16096005#comment-16096005
 ] 

Matt McCline edited comment on HIVE-17147 at 7/21/17 9:14 AM:
--------------------------------------------------------------

Number of rows is 1,000,000 but just cold test (SinglePassTime) since we don't 
support multiple iterations yet.

Interesting that plain row-mode MapJoin with HashMap is fastest for Inner and 
Outer!

{noformat}
Benchmark                                                                       
                    Mode  Samples     Score   Error  Units
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerBigOnlyNativeVectorFastBench.bench
           ss        1    55.000 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerBigOnlyNativeVectorOptimizedBench.bench
      ss        1   104.814 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerBigOnlyRowModeHashMapBench.bench
             ss        1   935.186 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerBigOnlyRowModeOptimized_Bench.bench
          ss        1   953.160 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerBigOnlyVectorPassThrough_Bench.bench
         ss        1   987.629 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerNativeVectorFastBench.bench
                  ss        1  1184.309 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerNativeVectorOptimizedBench.bench
             ss        1  1229.038 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerRowModeHashMapBench.bench
                    ss        1   578.308 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerRowModeOptimized_Bench.bench
                 ss        1  1703.355 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerVectorPassThrough_Bench.bench
                ss        1  3022.763 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyLeftSemiNativeVectorFastBench.bench
               ss        1    55.222 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyLeftSemiNativeVectorOptimizedBench.bench
          ss        1   104.688 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyLeftSemiRowModeHashMapBench.bench
                 ss        1   952.018 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyLeftSemiRowModeOptimized_Bench.bench
              ss        1   938.138 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyLeftSemiVectorPassThrough_Bench.bench
             ss        1  1005.610 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyOuterNativeVectorFastBench.bench
                  ss        1  1202.786 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyOuterNativeVectorOptimizedBench.bench
             ss        1  1225.712 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyOuterRowModeHashMapBench.bench
                    ss        1   794.460 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyOuterRowModeOptimized_Bench.bench
                 ss        1  2761.166 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyOuterVectorPassThrough_Bench.bench
                ss        1  3855.766 ±   NaN     ms
{noformat}


was (Author: mmccline):
Number of rows is 1,000,000 but just cold test (SinglePassTime) since we don't 
support multiple iterations yet.

{noformat}
Benchmark                                                                       
                    Mode  Samples     Score   Error  Units
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerBigOnlyNativeVectorFastBench.bench
           ss        1    55.000 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerBigOnlyNativeVectorOptimizedBench.bench
      ss        1   104.814 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerBigOnlyRowModeHashMapBench.bench
             ss        1   935.186 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerBigOnlyRowModeOptimized_Bench.bench
          ss        1   953.160 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerBigOnlyVectorPassThrough_Bench.bench
         ss        1   987.629 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerNativeVectorFastBench.bench
                  ss        1  1184.309 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerNativeVectorOptimizedBench.bench
             ss        1  1229.038 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerRowModeHashMapBench.bench
                    ss        1   578.308 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerRowModeOptimized_Bench.bench
                 ss        1  1703.355 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyInnerVectorPassThrough_Bench.bench
                ss        1  3022.763 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyLeftSemiNativeVectorFastBench.bench
               ss        1    55.222 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyLeftSemiNativeVectorOptimizedBench.bench
          ss        1   104.688 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyLeftSemiRowModeHashMapBench.bench
                 ss        1   952.018 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyLeftSemiRowModeOptimized_Bench.bench
              ss        1   938.138 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyLeftSemiVectorPassThrough_Bench.bench
             ss        1  1005.610 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyOuterNativeVectorFastBench.bench
                  ss        1  1202.786 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyOuterNativeVectorOptimizedBench.bench
             ss        1  1225.712 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyOuterRowModeHashMapBench.bench
                    ss        1   794.460 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyOuterRowModeOptimized_Bench.bench
                 ss        1  2761.166 ±   NaN     ms
o.a.h.b.v.m.VectorizedMapJoinBench.MapJoinOneLongKeyOuterVectorPassThrough_Bench.bench
                ss        1  3855.766 ±   NaN     ms
{noformat}

> Vectorization: Add code for testing MapJoin operator in isolation and 
> measuring its performance with JMH
> --------------------------------------------------------------------------------------------------------
>
>                 Key: HIVE-17147
>                 URL: https://issues.apache.org/jira/browse/HIVE-17147
>             Project: Hive
>          Issue Type: Bug
>          Components: Hive
>            Reporter: Matt McCline
>            Assignee: Matt McCline
>            Priority: Critical
>
> Current limitations:
> Only a one long key test currently.  Need more tests.
> The hive-jmh test doesn't handle multiple iterations.  And, the number of 
> rows and keys being driven through is way too small to be meaningful.
> The focus of this change was to get things started.
> NOTE: This change does change main line code by adding test hooks.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to