You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues-all@impala.apache.org by "ASF subversion and git services (Jira)" <ji...@apache.org> on 2020/09/08 10:13:00 UTC
[jira] [Commented] (IMPALA-7658) Proper codegen for HiveUdfCall
[ https://issues.apache.org/jira/browse/IMPALA-7658?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17192105#comment-17192105 ]
ASF subversion and git services commented on IMPALA-7658:
---------------------------------------------------------
Commit dc08b657e86c3bd81af27c7acf4a31b39b5b20e9 in impala's branch refs/heads/master from Daniel Becker
[ https://gitbox.apache.org/repos/asf?p=impala.git;h=dc08b65 ]
IMPALA-7658: Proper codegen for HiveUdfCall
Implementing codegen for HiveUdfCall.
Testing:
Verified that java udf tests pass locally.
Benchmarks:
Used a UDF from TestUdf.java that adds three integers:
create function tpch15_parquet.sum3(int, int, int) returns int
location '/test-warehouse/impala-hive-udfs.jar'
symbol='org.apache.impala.TestUdf';
Used the following query on the master branch and the change's branch:
set num_nodes=1; set mt_dop=1;
select min(tpch15_parquet.sum3(cast(l_orderkey as int),
cast(l_partkey as int), cast(l_suppkey as int)))
from tpch15_parquet.lineitem;
Results averaged over 100 runs after warmup:
Master: 20.6346s, stddev: 0.3132411856765332
This change: 19.0256s, stddev: 0.42039019873436
This is a ~7.8% improvement.
Change-Id: I2f994dac550f297ed3c88491816403f237d4d747
Reviewed-on: http://gerrit.cloudera.org:8080/16314
Reviewed-by: Impala Public Jenkins <im...@cloudera.com>
Tested-by: Impala Public Jenkins <im...@cloudera.com>
> Proper codegen for HiveUdfCall
> ------------------------------
>
> Key: IMPALA-7658
> URL: https://issues.apache.org/jira/browse/IMPALA-7658
> Project: IMPALA
> Issue Type: Improvement
> Components: Backend
> Reporter: Tim Armstrong
> Assignee: Daniel Becker
> Priority: Major
> Labels: codegen, performance
>
> This function uses GetCodegendComputeFnWrapper() to call the interpreted path but instead we could codegen the Evaluate() function to reduce the overhead. I think this is likely to be a little involved since there's a loop to unroll, so the solution might end up looking like IMPALA-5168
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-all-unsubscribe@impala.apache.org
For additional commands, e-mail: issues-all-help@impala.apache.org