[jira] [Updated] (HIVE-4822) implement vectorized math functions

2013-09-25 Thread Ashutosh Chauhan (JIRA)

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

Ashutosh Chauhan updated HIVE-4822:
---

Resolution: Fixed
Status: Resolved  (was: Patch Available)

Committed to branch. Thanks, Eric!

 implement vectorized math functions
 ---

 Key: HIVE-4822
 URL: https://issues.apache.org/jira/browse/HIVE-4822
 Project: Hive
  Issue Type: Sub-task
Affects Versions: vectorization-branch
Reporter: Eric Hanson
Assignee: Eric Hanson
 Fix For: vectorization-branch

 Attachments: HIVE-4822.1.patch, HIVE-4822.4.patch, 
 HIVE-4822.5-vectorization.patch, HIVE-4822.6.patch.txt, 
 HIVE-4822.7-vectorization.patch


 Implement vectorized support for the all the built-in math functions. This 
 includes implementing the vectorized operation, and tying it all together in 
 VectorizationContext so it runs end-to-end. These functions include:
 round(Col)
 Round(Col, N)
 Floor(Col)
 Ceil(Col)
 Rand(), Rand(seed)
 Exp(Col)
 Ln(Col)
 Log10(Col)
 Log2(Col)
 Log(base, Col)
 Pow(col, p), Power(col, p)
 Sqrt(Col)
 Bin(Col)
 Hex(Col)
 Unhex(Col)
 Conv(Col, from_base, to_base)
 Abs(Col)
 Pmod(arg1, arg2)
 Sin(Col)
 Asin(Col)
 Cos(Col)
 ACos(Col)
 Atan(Col)
 Degrees(Col)
 Radians(Col)
 Positive(Col)
 Negative(Col)
 Sign(Col)
 E()
 Pi()
 To reduce the total code volume, do an implicit type cast from non-double 
 input types to double. 
 Also, POSITITVE and NEGATIVE are syntactic sugar for unary + and unary -, so 
 reuse code for those as appropriate.
 Try to call the function directly in the inner loop and avoid new() or 
 expensive operations, as appropriate.
 Templatize the code where appropriate, e.g. all the unary function of form 
 DOUBLE func(DOUBLE)
 can probably be done with a template.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HIVE-4822) implement vectorized math functions

2013-09-24 Thread Eric Hanson (JIRA)

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

Eric Hanson updated HIVE-4822:
--

Attachment: HIVE-4822.7-vectorization.patch

Re-based patch on latest vectorization branch. Added support for serialization 
to all affected classes. Verified that junit tests pass for math functions.

 implement vectorized math functions
 ---

 Key: HIVE-4822
 URL: https://issues.apache.org/jira/browse/HIVE-4822
 Project: Hive
  Issue Type: Sub-task
Affects Versions: vectorization-branch
Reporter: Eric Hanson
Assignee: Eric Hanson
 Fix For: vectorization-branch

 Attachments: HIVE-4822.1.patch, HIVE-4822.4.patch, 
 HIVE-4822.5-vectorization.patch, HIVE-4822.6.patch.txt, 
 HIVE-4822.7-vectorization.patch


 Implement vectorized support for the all the built-in math functions. This 
 includes implementing the vectorized operation, and tying it all together in 
 VectorizationContext so it runs end-to-end. These functions include:
 round(Col)
 Round(Col, N)
 Floor(Col)
 Ceil(Col)
 Rand(), Rand(seed)
 Exp(Col)
 Ln(Col)
 Log10(Col)
 Log2(Col)
 Log(base, Col)
 Pow(col, p), Power(col, p)
 Sqrt(Col)
 Bin(Col)
 Hex(Col)
 Unhex(Col)
 Conv(Col, from_base, to_base)
 Abs(Col)
 Pmod(arg1, arg2)
 Sin(Col)
 Asin(Col)
 Cos(Col)
 ACos(Col)
 Atan(Col)
 Degrees(Col)
 Radians(Col)
 Positive(Col)
 Negative(Col)
 Sign(Col)
 E()
 Pi()
 To reduce the total code volume, do an implicit type cast from non-double 
 input types to double. 
 Also, POSITITVE and NEGATIVE are syntactic sugar for unary + and unary -, so 
 reuse code for those as appropriate.
 Try to call the function directly in the inner loop and avoid new() or 
 expensive operations, as appropriate.
 Templatize the code where appropriate, e.g. all the unary function of form 
 DOUBLE func(DOUBLE)
 can probably be done with a template.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HIVE-4822) implement vectorized math functions

2013-09-24 Thread Jitendra Nath Pandey (JIRA)

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

Jitendra Nath Pandey updated HIVE-4822:
---

Status: Patch Available  (was: Open)

 implement vectorized math functions
 ---

 Key: HIVE-4822
 URL: https://issues.apache.org/jira/browse/HIVE-4822
 Project: Hive
  Issue Type: Sub-task
Affects Versions: vectorization-branch
Reporter: Eric Hanson
Assignee: Eric Hanson
 Fix For: vectorization-branch

 Attachments: HIVE-4822.1.patch, HIVE-4822.4.patch, 
 HIVE-4822.5-vectorization.patch, HIVE-4822.6.patch.txt, 
 HIVE-4822.7-vectorization.patch


 Implement vectorized support for the all the built-in math functions. This 
 includes implementing the vectorized operation, and tying it all together in 
 VectorizationContext so it runs end-to-end. These functions include:
 round(Col)
 Round(Col, N)
 Floor(Col)
 Ceil(Col)
 Rand(), Rand(seed)
 Exp(Col)
 Ln(Col)
 Log10(Col)
 Log2(Col)
 Log(base, Col)
 Pow(col, p), Power(col, p)
 Sqrt(Col)
 Bin(Col)
 Hex(Col)
 Unhex(Col)
 Conv(Col, from_base, to_base)
 Abs(Col)
 Pmod(arg1, arg2)
 Sin(Col)
 Asin(Col)
 Cos(Col)
 ACos(Col)
 Atan(Col)
 Degrees(Col)
 Radians(Col)
 Positive(Col)
 Negative(Col)
 Sign(Col)
 E()
 Pi()
 To reduce the total code volume, do an implicit type cast from non-double 
 input types to double. 
 Also, POSITITVE and NEGATIVE are syntactic sugar for unary + and unary -, so 
 reuse code for those as appropriate.
 Try to call the function directly in the inner loop and avoid new() or 
 expensive operations, as appropriate.
 Templatize the code where appropriate, e.g. all the unary function of form 
 DOUBLE func(DOUBLE)
 can probably be done with a template.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HIVE-4822) implement vectorized math functions

2013-08-19 Thread Teddy Choi (JIRA)

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

Teddy Choi updated HIVE-4822:
-

Attachment: HIVE-4822.6.patch.txt

I rebased the patch to resolve the conflict with the latest commit on 
vectorization branch.

Following changes are added.
- UDFUnhex#evaluate returns a byte[] result.
- UDFUnhex does not implement IUDFUnaryString interface

 implement vectorized math functions
 ---

 Key: HIVE-4822
 URL: https://issues.apache.org/jira/browse/HIVE-4822
 Project: Hive
  Issue Type: Sub-task
Affects Versions: vectorization-branch
Reporter: Eric Hanson
Assignee: Eric Hanson
 Fix For: vectorization-branch

 Attachments: HIVE-4822.1.patch, HIVE-4822.4.patch, 
 HIVE-4822.5-vectorization.patch, HIVE-4822.6.patch.txt


 Implement vectorized support for the all the built-in math functions. This 
 includes implementing the vectorized operation, and tying it all together in 
 VectorizationContext so it runs end-to-end. These functions include:
 round(Col)
 Round(Col, N)
 Floor(Col)
 Ceil(Col)
 Rand(), Rand(seed)
 Exp(Col)
 Ln(Col)
 Log10(Col)
 Log2(Col)
 Log(base, Col)
 Pow(col, p), Power(col, p)
 Sqrt(Col)
 Bin(Col)
 Hex(Col)
 Unhex(Col)
 Conv(Col, from_base, to_base)
 Abs(Col)
 Pmod(arg1, arg2)
 Sin(Col)
 Asin(Col)
 Cos(Col)
 ACos(Col)
 Atan(Col)
 Degrees(Col)
 Radians(Col)
 Positive(Col)
 Negative(Col)
 Sign(Col)
 E()
 Pi()
 To reduce the total code volume, do an implicit type cast from non-double 
 input types to double. 
 Also, POSITITVE and NEGATIVE are syntactic sugar for unary + and unary -, so 
 reuse code for those as appropriate.
 Try to call the function directly in the inner loop and avoid new() or 
 expensive operations, as appropriate.
 Templatize the code where appropriate, e.g. all the unary function of form 
 DOUBLE func(DOUBLE)
 can probably be done with a template.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HIVE-4822) implement vectorized math functions

2013-07-24 Thread Edward Capriolo (JIRA)

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

Edward Capriolo updated HIVE-4822:
--

Status: Open  (was: Patch Available)

I think we need more javadoc here. How does explain work with the vectorization 
engine? The rest of our UDFS have explain annotations etc.  

 implement vectorized math functions
 ---

 Key: HIVE-4822
 URL: https://issues.apache.org/jira/browse/HIVE-4822
 Project: Hive
  Issue Type: Sub-task
Affects Versions: vectorization-branch
Reporter: Eric Hanson
Assignee: Eric Hanson
 Fix For: vectorization-branch

 Attachments: HIVE-4822.1.patch, HIVE-4822.4.patch, 
 HIVE-4822.5-vectorization.patch


 Implement vectorized support for the all the built-in math functions. This 
 includes implementing the vectorized operation, and tying it all together in 
 VectorizationContext so it runs end-to-end. These functions include:
 round(Col)
 Round(Col, N)
 Floor(Col)
 Ceil(Col)
 Rand(), Rand(seed)
 Exp(Col)
 Ln(Col)
 Log10(Col)
 Log2(Col)
 Log(base, Col)
 Pow(col, p), Power(col, p)
 Sqrt(Col)
 Bin(Col)
 Hex(Col)
 Unhex(Col)
 Conv(Col, from_base, to_base)
 Abs(Col)
 Pmod(arg1, arg2)
 Sin(Col)
 Asin(Col)
 Cos(Col)
 ACos(Col)
 Atan(Col)
 Degrees(Col)
 Radians(Col)
 Positive(Col)
 Negative(Col)
 Sign(Col)
 E()
 Pi()
 To reduce the total code volume, do an implicit type cast from non-double 
 input types to double. 
 Also, POSITITVE and NEGATIVE are syntactic sugar for unary + and unary -, so 
 reuse code for those as appropriate.
 Try to call the function directly in the inner loop and avoid new() or 
 expensive operations, as appropriate.
 Templatize the code where appropriate, e.g. all the unary function of form 
 DOUBLE func(DOUBLE)
 can probably be done with a template.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HIVE-4822) implement vectorized math functions

2013-07-23 Thread Eric Hanson (JIRA)

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

Eric Hanson updated HIVE-4822:
--

Attachment: HIVE-4822.5.patch

 implement vectorized math functions
 ---

 Key: HIVE-4822
 URL: https://issues.apache.org/jira/browse/HIVE-4822
 Project: Hive
  Issue Type: Sub-task
Affects Versions: vectorization-branch
Reporter: Eric Hanson
Assignee: Eric Hanson
 Fix For: vectorization-branch

 Attachments: HIVE-4822.1.patch, HIVE-4822.4.patch, HIVE-4822.5.patch


 Implement vectorized support for the all the built-in math functions. This 
 includes implementing the vectorized operation, and tying it all together in 
 VectorizationContext so it runs end-to-end. These functions include:
 round(Col)
 Round(Col, N)
 Floor(Col)
 Ceil(Col)
 Rand(), Rand(seed)
 Exp(Col)
 Ln(Col)
 Log10(Col)
 Log2(Col)
 Log(base, Col)
 Pow(col, p), Power(col, p)
 Sqrt(Col)
 Bin(Col)
 Hex(Col)
 Unhex(Col)
 Conv(Col, from_base, to_base)
 Abs(Col)
 Pmod(arg1, arg2)
 Sin(Col)
 Asin(Col)
 Cos(Col)
 ACos(Col)
 Atan(Col)
 Degrees(Col)
 Radians(Col)
 Positive(Col)
 Negative(Col)
 Sign(Col)
 E()
 Pi()
 To reduce the total code volume, do an implicit type cast from non-double 
 input types to double. 
 Also, POSITITVE and NEGATIVE are syntactic sugar for unary + and unary -, so 
 reuse code for those as appropriate.
 Try to call the function directly in the inner loop and avoid new() or 
 expensive operations, as appropriate.
 Templatize the code where appropriate, e.g. all the unary function of form 
 DOUBLE func(DOUBLE)
 can probably be done with a template.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HIVE-4822) implement vectorized math functions

2013-07-23 Thread Eric Hanson (JIRA)

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

Eric Hanson updated HIVE-4822:
--

Attachment: (was: HIVE-4822.5.patch)

 implement vectorized math functions
 ---

 Key: HIVE-4822
 URL: https://issues.apache.org/jira/browse/HIVE-4822
 Project: Hive
  Issue Type: Sub-task
Affects Versions: vectorization-branch
Reporter: Eric Hanson
Assignee: Eric Hanson
 Fix For: vectorization-branch

 Attachments: HIVE-4822.1.patch, HIVE-4822.4.patch, 
 HIVE-4822.5-vectorization.patch


 Implement vectorized support for the all the built-in math functions. This 
 includes implementing the vectorized operation, and tying it all together in 
 VectorizationContext so it runs end-to-end. These functions include:
 round(Col)
 Round(Col, N)
 Floor(Col)
 Ceil(Col)
 Rand(), Rand(seed)
 Exp(Col)
 Ln(Col)
 Log10(Col)
 Log2(Col)
 Log(base, Col)
 Pow(col, p), Power(col, p)
 Sqrt(Col)
 Bin(Col)
 Hex(Col)
 Unhex(Col)
 Conv(Col, from_base, to_base)
 Abs(Col)
 Pmod(arg1, arg2)
 Sin(Col)
 Asin(Col)
 Cos(Col)
 ACos(Col)
 Atan(Col)
 Degrees(Col)
 Radians(Col)
 Positive(Col)
 Negative(Col)
 Sign(Col)
 E()
 Pi()
 To reduce the total code volume, do an implicit type cast from non-double 
 input types to double. 
 Also, POSITITVE and NEGATIVE are syntactic sugar for unary + and unary -, so 
 reuse code for those as appropriate.
 Try to call the function directly in the inner loop and avoid new() or 
 expensive operations, as appropriate.
 Templatize the code where appropriate, e.g. all the unary function of form 
 DOUBLE func(DOUBLE)
 can probably be done with a template.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HIVE-4822) implement vectorized math functions

2013-07-23 Thread Eric Hanson (JIRA)

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

Eric Hanson updated HIVE-4822:
--

Attachment: HIVE-4822.5-vectorization.patch

 implement vectorized math functions
 ---

 Key: HIVE-4822
 URL: https://issues.apache.org/jira/browse/HIVE-4822
 Project: Hive
  Issue Type: Sub-task
Affects Versions: vectorization-branch
Reporter: Eric Hanson
Assignee: Eric Hanson
 Fix For: vectorization-branch

 Attachments: HIVE-4822.1.patch, HIVE-4822.4.patch, 
 HIVE-4822.5-vectorization.patch


 Implement vectorized support for the all the built-in math functions. This 
 includes implementing the vectorized operation, and tying it all together in 
 VectorizationContext so it runs end-to-end. These functions include:
 round(Col)
 Round(Col, N)
 Floor(Col)
 Ceil(Col)
 Rand(), Rand(seed)
 Exp(Col)
 Ln(Col)
 Log10(Col)
 Log2(Col)
 Log(base, Col)
 Pow(col, p), Power(col, p)
 Sqrt(Col)
 Bin(Col)
 Hex(Col)
 Unhex(Col)
 Conv(Col, from_base, to_base)
 Abs(Col)
 Pmod(arg1, arg2)
 Sin(Col)
 Asin(Col)
 Cos(Col)
 ACos(Col)
 Atan(Col)
 Degrees(Col)
 Radians(Col)
 Positive(Col)
 Negative(Col)
 Sign(Col)
 E()
 Pi()
 To reduce the total code volume, do an implicit type cast from non-double 
 input types to double. 
 Also, POSITITVE and NEGATIVE are syntactic sugar for unary + and unary -, so 
 reuse code for those as appropriate.
 Try to call the function directly in the inner loop and avoid new() or 
 expensive operations, as appropriate.
 Templatize the code where appropriate, e.g. all the unary function of form 
 DOUBLE func(DOUBLE)
 can probably be done with a template.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HIVE-4822) implement vectorized math functions

2013-07-19 Thread Eric Hanson (JIRA)

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

Eric Hanson updated HIVE-4822:
--

Attachment: HIVE-4822.4.patch

 implement vectorized math functions
 ---

 Key: HIVE-4822
 URL: https://issues.apache.org/jira/browse/HIVE-4822
 Project: Hive
  Issue Type: Sub-task
Affects Versions: vectorization-branch
Reporter: Eric Hanson
Assignee: Eric Hanson
 Attachments: HIVE-4822.1.patch, HIVE-4822.4.patch


 Implement vectorized support for the all the built-in math functions. This 
 includes implementing the vectorized operation, and tying it all together in 
 VectorizationContext so it runs end-to-end. These functions include:
 round(Col)
 Round(Col, N)
 Floor(Col)
 Ceil(Col)
 Rand(), Rand(seed)
 Exp(Col)
 Ln(Col)
 Log10(Col)
 Log2(Col)
 Log(base, Col)
 Pow(col, p), Power(col, p)
 Sqrt(Col)
 Bin(Col)
 Hex(Col)
 Unhex(Col)
 Conv(Col, from_base, to_base)
 Abs(Col)
 Pmod(arg1, arg2)
 Sin(Col)
 Asin(Col)
 Cos(Col)
 ACos(Col)
 Atan(Col)
 Degrees(Col)
 Radians(Col)
 Positive(Col)
 Negative(Col)
 Sign(Col)
 E()
 Pi()
 To reduce the total code volume, do an implicit type cast from non-double 
 input types to double. 
 Also, POSITITVE and NEGATIVE are syntactic sugar for unary + and unary -, so 
 reuse code for those as appropriate.
 Try to call the function directly in the inner loop and avoid new() or 
 expensive operations, as appropriate.
 Templatize the code where appropriate, e.g. all the unary function of form 
 DOUBLE func(DOUBLE)
 can probably be done with a template.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HIVE-4822) implement vectorized math functions

2013-07-19 Thread Eric Hanson (JIRA)

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

Eric Hanson updated HIVE-4822:
--

Fix Version/s: vectorization-branch
   Status: Patch Available  (was: In Progress)

 implement vectorized math functions
 ---

 Key: HIVE-4822
 URL: https://issues.apache.org/jira/browse/HIVE-4822
 Project: Hive
  Issue Type: Sub-task
Affects Versions: vectorization-branch
Reporter: Eric Hanson
Assignee: Eric Hanson
 Fix For: vectorization-branch

 Attachments: HIVE-4822.1.patch, HIVE-4822.4.patch


 Implement vectorized support for the all the built-in math functions. This 
 includes implementing the vectorized operation, and tying it all together in 
 VectorizationContext so it runs end-to-end. These functions include:
 round(Col)
 Round(Col, N)
 Floor(Col)
 Ceil(Col)
 Rand(), Rand(seed)
 Exp(Col)
 Ln(Col)
 Log10(Col)
 Log2(Col)
 Log(base, Col)
 Pow(col, p), Power(col, p)
 Sqrt(Col)
 Bin(Col)
 Hex(Col)
 Unhex(Col)
 Conv(Col, from_base, to_base)
 Abs(Col)
 Pmod(arg1, arg2)
 Sin(Col)
 Asin(Col)
 Cos(Col)
 ACos(Col)
 Atan(Col)
 Degrees(Col)
 Radians(Col)
 Positive(Col)
 Negative(Col)
 Sign(Col)
 E()
 Pi()
 To reduce the total code volume, do an implicit type cast from non-double 
 input types to double. 
 Also, POSITITVE and NEGATIVE are syntactic sugar for unary + and unary -, so 
 reuse code for those as appropriate.
 Try to call the function directly in the inner loop and avoid new() or 
 expensive operations, as appropriate.
 Templatize the code where appropriate, e.g. all the unary function of form 
 DOUBLE func(DOUBLE)
 can probably be done with a template.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HIVE-4822) implement vectorized math functions

2013-07-16 Thread Eric Hanson (JIRA)

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

Eric Hanson updated HIVE-4822:
--

Attachment: HIVE-4822.1.patch

Implemented support for math functions. This still needs unit tests. So the 
patch is not complete. I'm just attaching it here as a checkpoint.

 implement vectorized math functions
 ---

 Key: HIVE-4822
 URL: https://issues.apache.org/jira/browse/HIVE-4822
 Project: Hive
  Issue Type: Sub-task
Affects Versions: vectorization-branch
Reporter: Eric Hanson
Assignee: Eric Hanson
 Attachments: HIVE-4822.1.patch


 Implement vectorized support for the all the built-in math functions. This 
 includes implementing the vectorized operation, and tying it all together in 
 VectorizationContext so it runs end-to-end. These functions include:
 round(Col)
 Round(Col, N)
 Floor(Col)
 Ceil(Col)
 Rand(), Rand(seed)
 Exp(Col)
 Ln(Col)
 Log10(Col)
 Log2(Col)
 Log(base, Col)
 Pow(col, p), Power(col, p)
 Sqrt(Col)
 Bin(Col)
 Hex(Col)
 Unhex(Col)
 Conv(Col, from_base, to_base)
 Abs(Col)
 Pmod(arg1, arg2)
 Sin(Col)
 Asin(Col)
 Cos(Col)
 ACos(Col)
 Atan(Col)
 Degrees(Col)
 Radians(Col)
 Positive(Col)
 Negative(Col)
 Sign(Col)
 E()
 Pi()
 To reduce the total code volume, do an implicit type cast from non-double 
 input types to double. 
 Also, POSITITVE and NEGATIVE are syntactic sugar for unary + and unary -, so 
 reuse code for those as appropriate.
 Try to call the function directly in the inner loop and avoid new() or 
 expensive operations, as appropriate.
 Templatize the code where appropriate, e.g. all the unary function of form 
 DOUBLE func(DOUBLE)
 can probably be done with a template.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HIVE-4822) implement vectorized math functions

2013-07-09 Thread Eric Hanson (JIRA)

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

Eric Hanson updated HIVE-4822:
--

Assignee: Eric Hanson

 implement vectorized math functions
 ---

 Key: HIVE-4822
 URL: https://issues.apache.org/jira/browse/HIVE-4822
 Project: Hive
  Issue Type: Sub-task
Affects Versions: vectorization-branch
Reporter: Eric Hanson
Assignee: Eric Hanson

 Implement vectorized support for the all the built-in math functions. This 
 includes implementing the vectorized operation, and tying it all together in 
 VectorizationContext so it runs end-to-end. These functions include:
 round(Col)
 Round(Col, N)
 Floor(Col)
 Ceil(Col)
 Rand(), Rand(seed)
 Exp(Col)
 Ln(Col)
 Log10(Col)
 Log2(Col)
 Log(base, Col)
 Pow(col, p), Power(col, p)
 Sqrt(Col)
 Bin(Col)
 Hex(Col)
 Unhex(Col)
 Conv(Col, from_base, to_base)
 Abs(Col)
 Pmod(arg1, arg2)
 Sin(Col)
 Asin(Col)
 Cos(Col)
 ACos(Col)
 Atan(Col)
 Degrees(Col)
 Radians(Col)
 Positive(Col)
 Negative(Col)
 Sign(Col)
 E()
 Pi()
 To reduce the total code volume, do an implicit type cast from non-double 
 input types to double. 
 Also, POSITITVE and NEGATIVE are syntactic sugar for unary + and unary -, so 
 reuse code for those as appropriate.
 Try to call the function directly in the inner loop and avoid new() or 
 expensive operations, as appropriate.
 Templatize the code where appropriate, e.g. all the unary function of form 
 DOUBLE func(DOUBLE)
 can probably be done with a template.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira