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

ASF GitHub Bot commented on DRILL-3912:
---------------------------------------

Github user jinfengni commented on the pull request:

    https://github.com/apache/drill/pull/189#issuecomment-149385017
  
    Seems to me this pull request would remove the common subexpression 
elimination(CSE) for Project and Filter only; it would not do CSE for other 
operators, like Join, Aggregation, Union, etc. 
    
    I understand that the Union-type work would highly require CSE in 
Project/Filter. But will Union-type work would also require CSE in other 
operators? 
    
    If this JIRA only targets for Project/Filter, I think it would make sense 
to explicitly specify this scope in the JIRA. Otherwise, people would expect 
CSE would happen to all Drill's relation operator, which is not true.
    
    Another question I have is : how easy is it to extend this patch to include 
CSE support for other operators?  I tried to enable CSE for all operators. 
Turns out that bunch of unit testcase would fail. 
    



> Common subexpression elimination in code generation
> ---------------------------------------------------
>
>                 Key: DRILL-3912
>                 URL: https://issues.apache.org/jira/browse/DRILL-3912
>             Project: Apache Drill
>          Issue Type: Bug
>            Reporter: Steven Phillips
>            Assignee: Jinfeng Ni
>
> Drill currently will evaluate the full expression tree, even if there are 
> redundant subtrees. Many of these redundant evaluations can be eliminated by 
> reusing the results from previously evaluated expression trees.
> For example,
> {code}
> select a + 1, (a + 1)* (a - 1) from t
> {code}
> Will compute the entire (a + 1) expression twice. With CSE, it will only be 
> evaluated once.
> The benefit will be reducing the work done when evaluating expressions, as 
> well as reducing the amount of code that is generated, which could also lead 
> to better JIT optimization.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to