arraysumfunctor: fast sum a double array, use for SUM() in Calc
This adds an array sum functor which sums a double array in a as fast as possible way. There are 2 implementations: SSE2 and a simple unrolled implementation. SSE2 implementation is used if SSE2 is detected at runtime. Additional info: SSE implementation at first processes the array until the array is aligned by 16-bit boundary (should only process 1 element). Then the array is processed by summing 8 values in one pass (using 4 variables that are 128-bit wide) where SSE operation can process 2 double values in one call. Change-Id: I24494b08cae049aa3eabcb086867f1bdd4128374
Showing
Please
register
or
sign in
to comment