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

ASF subversion and git services commented on IMPALA-14851:
----------------------------------------------------------

Commit fb93df7a5991c196531ee43ca23158e59e165a02 in impala's branch 
refs/heads/master from Balazs Hevele
[ https://gitbox.apache.org/repos/asf?p=impala.git;h=fb93df7a5 ]

IMPALA-14851: Codegen GroupingAggregator::CopyGroupingValues

Created codegen for GroupingAggregator::CopyGroupingValues.
This function runs when a new, distinct value is seen during a group by
aggregation.

Measurements:
Measured using the following:
  set num_nodes=1; set mt_dop=1;
  SELECT COUNT(DISTINCT l_orderkey, l_comment) FROM tpch.lineitem;

AGGREGATION_NODE Avg Time changed from 743.281ms to 659.414ms.

Codegen:
  Before:
    NumInstructions: 1.42K (1422)
    NumOptimizedInstructions: 931 (931)
    ModuleBitcodeSize: 3.67 MB (3846476)
  After:
    NumInstructions: 1.54K (1541)
    NumOptimizedInstructions: 1.05K (1047)
    ModuleBitcodeSize: 3.42 MB (3590728)

Testing:
Ran existing exhaustive and ASAN tests with patch.

Change-Id: Ia2c54a5745ba05a926795318d3b074fde6d0c00a
Reviewed-on: http://gerrit.cloudera.org:8080/24132
Reviewed-by: Impala Public Jenkins <[email protected]>
Reviewed-by: Csaba Ringhofer <[email protected]>
Tested-by: Csaba Ringhofer <[email protected]>


> Codegen tuple copy for Grouping Aggregator
> ------------------------------------------
>
>                 Key: IMPALA-14851
>                 URL: https://issues.apache.org/jira/browse/IMPALA-14851
>             Project: IMPALA
>          Issue Type: Sub-task
>          Components: Backend
>            Reporter: Balazs Hevele
>            Assignee: Balazs Hevele
>            Priority: Major
>              Labels: codegen, performance
>
> Add codegen for tuple deepcopy in GroupingAggregator.
> There are two places where it uses tuple copy:
> 1. When spilling, it uses a BufferedTupleStream
> 2. When encountering a new group, see GroupingAggregator::CopyGroupingValues
> If possible, use common deepcopy functions with other systems (e.g. 
> Tuple::TryDeepCopy*).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to