[ 
https://issues.apache.org/jira/browse/TAJO-906?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Hyunsik Choi resolved TAJO-906.
-------------------------------

    Resolution: Fixed

committed it to master branch. Thanks!

> Runtime code generation for evaluating expression trees
> -------------------------------------------------------
>
>                 Key: TAJO-906
>                 URL: https://issues.apache.org/jira/browse/TAJO-906
>             Project: Tajo
>          Issue Type: Improvement
>          Components: physical operator
>            Reporter: Hyunsik Choi
>            Assignee: Hyunsik Choi
>             Fix For: 0.9.0
>
>
> We have used EvalNode for two purposes:
>  * logical planning of expressions
>  * evaluation of expressions
> EvalNode still is very nice for the purpose of logical planning. But, each 
> EvalNode tree takes Datum included in a tuple and results in a Datum as a 
> evaluation result. 
> So, the current approach requires many object creations, and causes interpret 
> overheads, meaning that each one evaluation involves tree traverses and many 
> function calls. interpretation involves also many branches, and it is harmful 
> to CPU pipelining.
> I propose Java byte code generation for each expression, and I'll use ASM 
> (http://asm.ow2.org/) for it. This approach will write native java byte code, 
> eliminating many condition branches and function calls. In addition, it is 
> easier to deal with java primitive data types for expressions.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to