Steven Phillips created DRILL-3912:
--------------------------------------

             Summary: Common subexpression elimination
                 Key: DRILL-3912
                 URL: https://issues.apache.org/jira/browse/DRILL-3912
             Project: Apache Drill
          Issue Type: Bug
            Reporter: Steven Phillips


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