hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Remus Rusanu (JIRA)" <>
Subject [jira] [Created] (HIVE-4613) Improve cache friendliness of VectorHashKeyWrapper
Date Sat, 25 May 2013 11:14:19 GMT
Remus Rusanu created HIVE-4613:

             Summary: Improve cache friendliness of VectorHashKeyWrapper
                 Key: HIVE-4613
             Project: Hive
          Issue Type: Sub-task
          Components: Query Processor
    Affects Versions: vectorization-branch
            Reporter: Remus Rusanu
            Assignee: Remus Rusanu
            Priority: Minor

1) the implementation of VectorHashKeyWrapper uses an array of primitives even when there
is only one key, which implies one extra pointer chase. for single key group by we can do
a more optimal implementation that uses a primitive field. The draw back is that the VectorHashKeyWrapper
becomes abstract and the API uses virtual functions. Note that the most critical function
is .equals, which is already virtual.
2) make the bucket list comparison more cache friendly. I expect this to be the critical for
perf because of the number of calls on bucket collisions. If we ensure that instances with
equals hashcode were allocated together (eg. using array allocations in batches) then we can
get some benefit from allocation proximity (TLB, NUMA).

I'll leave these as minor since we have no evidence atm that the issue actually exists, nor
any way to measure the impact of a fix.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

View raw message