64-bit Linux (Debian) running on a Intel Xeon E5450 @ 3.00GHz nimrod:~$ rm vec_bench vec_bench.o nimrod:~$ make gcc-4.3 -c -O2 -msse -msse2 -W -Wall -Wextra -DALIGNED vec_bench.c -o vec_bench.o vec_bench.c: In function âaccurate_timeâ: vec_bench.c:48: warning: implicit declaration of function âgettimeofdayâ vec_bench.c: In function âmainâ: vec_bench.c:290: warning: control reaches end of non-void function gcc-4.3 vec_bench.o -o vec_bench nimrod:~$ ./vec_bench Testing methods... All OK Problem size Simple Intrin Inline 100 2.79e+02 cycles (100.0%) 9.90e+01 cycles ( 35.5%) 2.25e+02 cycles ( 80.6%) 1000 2.53e+03 cycles (100.0%) 7.20e+02 cycles ( 28.5%) 2.04e+03 cycles ( 80.8%) 10000 2.55e+04 cycles (100.0%) 1.53e+04 cycles ( 60.2%) 2.01e+04 cycles ( 78.8%) 100000 2.61e+05 cycles (100.0%) 1.56e+05 cycles ( 59.5%) 2.01e+05 cycles ( 77.0%) 1000000 1.09e+07 cycles (100.0%) 7.42e+06 cycles ( 68.3%) 9.80e+06 cycles ( 90.2%) 10000000 1.11e+08 cycles (100.0%) 1.03e+08 cycles ( 92.7%) 1.08e+08 cycles ( 97.2%) nimrod:~$ rm vec_bench vec_bench.o nimrod:~$ make gcc-4.3 -c -O3 -msse -msse2 -W -Wall -Wextra -DALIGNED vec_bench.c -o vec_bench.o vec_bench.c: In function âaccurate_timeâ: vec_bench.c:48: warning: implicit declaration of function âgettimeofdayâ vec_bench.c: In function âmainâ: vec_bench.c:290: warning: control reaches end of non-void function gcc-4.3 vec_bench.o -o vec_bench nimrod:~$ ./vec_bench Testing methods... All OK Problem size Simple Intrin Inline 100 1.80e+02 cycles (100.0%) 9.90e+01 cycles ( 55.0%) 2.25e+02 cycles (125.0%) 1000 1.55e+03 cycles (100.0%) 7.20e+02 cycles ( 46.5%) 2.03e+03 cycles (131.4%) 10000 1.69e+04 cycles (100.0%) 1.52e+04 cycles ( 90.3%) 2.01e+04 cycles (119.1%) 100000 1.71e+05 cycles (100.0%) 1.56e+05 cycles ( 90.8%) 2.02e+05 cycles (117.6%) 1000000 1.02e+07 cycles (100.0%) 7.43e+06 cycles ( 72.8%) 9.81e+06 cycles ( 96.1%) 10000000 1.04e+08 cycles (100.0%) 1.03e+08 cycles ( 98.9%) 1.08e+08 cycles (103.8%)