Long Sum combine1: Maximum use of data abstraction: Best: 10.10 (4%), Overall Best: 10.12 40-most: 10.12 cycles/element Long Sum combine2: Take vec_length() out of loop: Best: 7.01 (8%), Overall Best: 7.02 40-most: 7.02 cycles/element Long Sum combine3: Array reference to vector data: Best: 7.01 (6%), Overall Best: 7.04 40-most: 7.17 cycles/element Long Sum combine3w: Update *dest within loop only with write: Best: 1.63 (6%), Overall Best: 1.64 40-most: 1.64 cycles/element Long Sum combine4: Array reference, accumulate in temporary: Best: 1.26 (14%), Overall Best: 1.28 40-most: 1.27 cycles/element Long Sum combine4b: Include bonds check in loop: Best: 2.02 (100%), Overall Best: 2.02 40-most: 2.02 cycles/element Long Sum combine4p: Pointer reference, accumulate in temporary: Best: 1.26 (2%), Overall Best: 1.27 40-most: 1.28 cycles/element Long Sum combine5: Array code, unrolled by 2: Best: 0.99 (2%), Overall Best: 1.01 40-most: 1.01 cycles/element Long Sum combine5p: Pointer code, unrolled by 2, for loop: Best: 1.00 (62%), Overall Best: 1.01 40-most: 1.01 cycles/element Long Sum unroll2aw: Array code, unrolled by 2, while loop: Best: 1.00 (2%), Overall Best: 1.01 40-most: 1.01 cycles/element Long Sum unroll3a: Array code, unrolled by 3: Best: 1.00 (48%), Overall Best: 1.01 40-most: 1.01 cycles/element Long Sum unroll4a: Array code, unrolled by 4: Best: 1.00 (40%), Overall Best: 1.00 40-most: 1.01 cycles/element Long Sum unroll5a: Array code, unrolled by 5: Best: 1.00 (30%), Overall Best: 1.01 40-most: 1.01 cycles/element Long Sum unroll6a: Array code, unrolled by 6: Best: 1.00 (18%), Overall Best: 1.00 40-most: 1.01 cycles/element Long Sum unroll7a: Array code, unrolled by 7: Best: 1.00 (24%), Overall Best: 1.01 40-most: 1.01 cycles/element Long Sum unroll8a: Array code, unrolled by 8: Best: 1.00 (40%), Overall Best: 1.01 40-most: 1.01 cycles/element Long Sum unroll9a: Array code, unrolled by 9: Best: 1.00 (28%), Overall Best: 1.01 40-most: 1.01 cycles/element Long Sum unroll10a: Array code, unrolled by 10: Best: 1.00 (4%), Overall Best: 1.01 40-most: 1.02 cycles/element Long Sum unroll16a: Array code, unrolled by 16: Best: 1.01 (2%), Overall Best: 1.02 40-most: 1.02 cycles/element Long Sum unroll2: Pointer code, unrolled by 2: Best: 1.00 (22%), Overall Best: 1.00 40-most: 1.01 cycles/element Long Sum unroll3: Pointer code, unrolled by 3: Best: 1.00 (48%), Overall Best: 1.01 40-most: 1.01 cycles/element Long Sum unroll4: Pointer code, unrolled by 4: Best: 1.00 (12%), Overall Best: 1.01 40-most: 1.01 cycles/element Long Sum unroll8: Pointer code, unrolled by 8: Best: 1.00 (18%), Overall Best: 1.01 40-most: 1.01 cycles/element Long Sum unroll16: Pointer code, unrolled by 16: Best: 1.02 (52%), Overall Best: 1.02 40-most: 1.03 cycles/element Long Sum combine6: Array code, unrolled by 2, Superscalar x2: Best: 0.79 (4%), Overall Best: 0.81 40-most: 0.81 cycles/element Long Sum unroll4x2a: Array code, unrolled by 4, Superscalar x2: Best: 0.68 (6%), Overall Best: 0.68 40-most: 0.69 cycles/element Long Sum unroll8x2a: Array code, unrolled by 8, Superscalar x2: Best: 0.52 (2%), Overall Best: 0.53 40-most: 0.54 cycles/element Long Sum unroll3x3a: Array code, unrolled by 3, Superscalar x3: Best: 0.72 (16%), Overall Best: 0.72 40-most: 0.73 cycles/element Long Sum unroll4x4a: Array code, unrolled by 4, Superscalar x4: Best: 0.68 (20%), Overall Best: 0.69 40-most: 0.69 cycles/element Long Sum unroll5x5a: Array code, unrolled by 5, Superscalar x5: Best: 0.57 (16%), Overall Best: 0.58 40-most: 0.58 cycles/element Long Sum unroll6x6a: Array code, unrolled by 6, Superscalar x6: Best: 0.54 (2%), Overall Best: 0.56 40-most: 0.56 cycles/element Long Sum unroll7x7a: Array code, unrolled by 7, Superscalar x7: Best: 0.53 (4%), Overall Best: 0.54 40-most: 0.54 cycles/element Long Sum unroll8x4a: Array code, unrolled by 8, Superscalar x4: Best: 0.52 (4%), Overall Best: 0.53 40-most: 0.54 cycles/element Long Sum unroll8x8a: Array code, unrolled by 8, Superscalar x8: Best: 0.52 (2%), Overall Best: 0.53 40-most: 0.54 cycles/element Long Sum unroll9x9a: Array code, unrolled by 9, Superscalar x9: Best: 0.52 (2%), Overall Best: 0.54 40-most: 0.54 cycles/element Long Sum unroll10x10a: Array code, unrolled by 10, Superscalar x10: Best: 0.53 (4%), Overall Best: 0.54 40-most: 0.55 cycles/element Long Sum unroll2x6a: Array code, unrolled by 12, Superscalar x6: Best: 0.55 (10%), Overall Best: 0.57 40-most: 0.57 cycles/element Long Sum unroll12x12a: Array code, unrolled by 12, Superscalar x12: Best: 0.54 (8%), Overall Best: 0.55 40-most: 0.56 cycles/element Long Sum unroll16x16a: Array code, unrolled by 16, Superscalar x16: Best: 0.73 (10%), Overall Best: 0.74 40-most: 0.75 cycles/element Long Sum unroll20x20a: Array code, unrolled by 20, Superscalar x20: Best: 0.80 (4%), Overall Best: 0.81 40-most: 0.83 cycles/element Long Sum unroll8x2: Pointer code, unrolled by 8, Superscalar x2: Best: 0.51 (2%), Overall Best: 0.52 40-most: 0.53 cycles/element Long Sum unroll8x4: Pointer code, unrolled by 8, Superscalar x4: Best: 0.51 (18%), Overall Best: 0.51 40-most: 0.52 cycles/element Long Sum unroll8x8: Pointer code, unrolled by 8, Superscalar x8: Best: 0.50 (16%), Overall Best: 0.51 40-most: 0.51 cycles/element Long Sum unroll9x3: Pointer code, unrolled by 9, Superscalar x3: Best: 0.53 (34%), Overall Best: 0.53 40-most: 0.54 cycles/element Long Sum unrollx2as: Array code, Unroll x2, Superscalar x2, noninterleaved: Best: 0.79 (24%), Overall Best: 0.81 40-most: 0.80 cycles/element Long Sum combine7: Array code, unrolled by 2, different associativity: Best: 1.00 (26%), Overall Best: 1.01 40-most: 1.01 cycles/element Long Sum unroll3aa: Array code, unrolled by 3, Different Associativity: Best: 0.73 (80%), Overall Best: 0.74 40-most: 0.73 cycles/element Long Sum unroll4aa: Array code, unrolled by 4, Different Associativity: Best: 0.69 (4%), Overall Best: 0.70 40-most: 0.70 cycles/element Long Sum unroll5aa: Array code, unrolled by 5, Different Associativity: Best: 0.57 (54%), Overall Best: 0.58 40-most: 0.58 cycles/element Long Sum unroll6aa: Array code, unrolled by 6, Different Associativity: Best: 0.56 (74%), Overall Best: 0.57 40-most: 0.57 cycles/element Long Sum unroll7aa: Array code, unrolled by 7, Different Associativity: Best: 0.54 (12%), Overall Best: 0.55 40-most: 0.55 cycles/element Long Sum unroll8aa: Array code, unrolled by 8, Different Associativity: Best: 0.54 (50%), Overall Best: 0.54 40-most: 0.55 cycles/element Long Sum unroll9aa: Array code, unrolled by 9, Different Associativity: Best: 0.53 (14%), Overall Best: 0.55 40-most: 0.55 cycles/element Long Sum unroll10aa: Array code, unrolled by 10, Different Associativity: Best: 0.54 (16%), Overall Best: 0.56 40-most: 0.56 cycles/element Long Sum unroll12aa: Array code, unrolled by 12, Different Associativity: Best: 0.55 (6%), Overall Best: 0.57 40-most: 0.57 cycles/element Long Sum simd_v1: SSE code, 1*VSIZE-way parallelism: Best: 2.00 (2%), Overall Best: 2.02 40-most: 2.14 cycles/element Long Sum simd_v2: SSE code, 2*VSIZE-way parallelism: Best: 0.19 (4%), Overall Best: 0.20 40-most: 0.22 cycles/element Long Sum simd_v4: SSE code, 4*VSIZE-way parallelism: Best: 0.18 (24%), Overall Best: 0.18 40-most: 0.19 cycles/element Long Sum simd_v8: SSE code, 8*VSIZE-way parallelism: Best: 0.11 (10%), Overall Best: 0.13 40-most: 0.13 cycles/element Long Sum simd_v10: SSE code, 10*VSIZE-way parallelism: Best: 0.10 (4%), Overall Best: 0.13 40-most: 0.13 cycles/element Long Sum simd_v12: SSE code, 12*VSIZE-way parallelism: Best: 0.09 (4%), Overall Best: 0.11 40-most: 0.12 cycles/element Long Sum simd_v2a: SSE code, 2*VSIZE-way parallelism, reassociate: Best: 1.12 (2%), Overall Best: 1.13 40-most: 1.13 cycles/element Long Sum simd_v4a: SSE code, 4*VSIZE-way parallelism, reassociate: Best: 0.50 (96%), Overall Best: 0.50 40-most: 0.50 cycles/element Long Sum simd_v8a: SSE code, 8*VSIZE-way parallelism, reassociate: Best: 0.23 (6%), Overall Best: 0.24 40-most: 0.25 cycles/element