Double Product combine1: Maximum use of data abstraction: 28.04 cycles/element Double Product combine2: Take vec_length() out of loop: 28.00 cycles/element Double Product combine3: Array reference to vector data: 7.09 cycles/element Double Product combine4: Array reference, accumulate in temporary: 7.00 cycles/element Double Product combine4p: Pointer reference, accumulate in temporary: 7.67 cycles/element Double Product Array code, unrolled by 2: 7.00 cycles/element Double Product combine5p: Pointer code, unrolled by 3, for loop: 7.01 cycles/element Double Product Array code, unrolled by 3, while loop: 7.00 cycles/element Double Product Array code, unrolled by 4: 7.01 cycles/element Double Product Array code, unrolled by 8: 7.00 cycles/element Double Product Array code, unrolled by 16: 7.00 cycles/element Double Product Pointer code, unrolled by 2: 7.00 cycles/element Double Product Pointer code, unrolled by 3: 7.01 cycles/element Double Product Pointer code, unrolled by 4: 7.00 cycles/element Double Product Pointer code, unrolled by 8: 7.00 cycles/element Double Product Pointer code, unrolled by 16: 6.99 cycles/element Double Product combine6: Array code, unrolled by 2, Superscalar x2: 3.51 cycles/element Double Product Array code, unrolled by 4, Superscalar x2: 3.50 cycles/element Double Product Array code, unrolled by 8, Superscalar x2: 3.49 cycles/element Double Product Array code, unrolled by 3, Superscalar x3: 2.34 cycles/element Double Product Array code, unrolled by 4, Superscalar x4: 2.00 cycles/element Double Product Array code, unrolled by 8, Superscalar x4: 2.00 cycles/element Double Product Array code, unrolled by 6, Superscalar x6: 2.00 cycles/element Double Product Array code, unrolled by 8, Superscalar x8: 2.05 cycles/element Double Product Array code, unrolled by 10, Superscalar x10: 2.00 cycles/element Double Product Array code, unrolled by 12, Superscalar x6: 2.00 cycles/element Double Product Array code, unrolled by 12, Superscalar x12: 2.00 cycles/element Double Product Pointer code, unrolled by 8, Superscalar x2: 3.49 cycles/element Double Product Pointer code, unrolled by 8, Superscalar x4: 1.99 cycles/element Double Product Pointer code, unrolled by 8, Superscalar x8: 2.00 cycles/element Double Product Pointer code, unrolled by 9, Superscalar x3: 2.33 cycles/element Double Product Array code, Unroll x2, Superscalar x2, noninterleaved: 3.50 cycles/element Double Product Array code, unrolled by 2, different associativity: 6.50 cycles/element Double Product Array code, unrolled by 3, Different Associativity: 6.66 cycles/element Double Product Array code, unrolled by 4, Different Associativity: 5.00 cycles/element Double Product Array code, unrolled by 6, Different Associativity: 4.67 cycles/element Double Product Array code, unrolled by 8, Different Associativity: 3.38 cycles/element Double Product SSE code, 1*VSIZE-way parallelism: 3.52 cycles/element Double Product SSE code, 2*VSIZE-way parallelism: 2.30 cycles/element Double Product SSE code, 4*VSIZE-way parallelism: 1.84 cycles/element Double Product SSE code, 8*VSIZE-way parallelism: 1.11 cycles/element Double Product SSE code, 12*VSIZE-way parallelism: 1.04 cycles/element Double Product SSE code, 2*VSIZE-way parallelism, reassociate: 2.10 cycles/element Double Product SSE code, 4*VSIZE-way parallelism, reassociate: 1.77 cycles/element Double Product SSE code, 8*VSIZE-way parallelism, reassociate: 1.08 cycles/element