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

Gopal V commented on HIVE-10180:
--------------------------------

You're right, I don't have AVX2 (zmm0) - still should be seeing the AVX  (ymm0).

{code}
model name      : Intel(R) Xeon(R) CPU E5-2630 0 @ 2.30GHz
...
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov 
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb 
rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc 
aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr 
pdcm pcid dca sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx 
lahf_lm ida arat epb xsaveopt pln pts dts tpr_shadow vnmi flexpriority ept vpid
{code}

Will try a perf run with the -XX:UseAvx after I upgrade to the JDK8 u40

> Loop optimization for SIMD in ColumnArithmeticColumn.txt
> --------------------------------------------------------
>
>                 Key: HIVE-10180
>                 URL: https://issues.apache.org/jira/browse/HIVE-10180
>             Project: Hive
>          Issue Type: Sub-task
>            Reporter: Chengxiang Li
>            Assignee: Chengxiang Li
>            Priority: Minor
>         Attachments: HIVE-10180.1.patch, HIVE-10180.2.patch
>
>
> JVM is quite strict on the code schema which may executed with SIMD 
> instructions, take a loop in DoubleColAddDoubleColumn.java for example, 
> {code:java}
> for (int i = 0; i != n; i++) {
>   outputVector[i] = vector1[0] + vector2[i];
> }
> {code}
> The "vector1[0]" reference would prevent JVM to execute this part of code 
> with vectorized instructions, we need to assign the "vector1[0]" to a 
> variable outside of loop, and use that variable in loop.



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

Reply via email to