| Time | Implementation | Compiler | Benchmark date | SUPERCOP version |
| 383738 | vperm | gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer | 20140911 | 20140907 |
| 383783 | vperm | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | 20140911 | 20140907 |
| 383865 | vperm | gcc -m64 -march=core2 -O3 -fomit-frame-pointer | 20140911 | 20140907 |
| 383955 | vperm | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | 20140911 | 20140907 |
| 384158 | vperm | gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer | 20140911 | 20140907 |
| 384630 | vperm | gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | 20140911 | 20140907 |
| 384728 | vperm | gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | 20140911 | 20140907 |
| 386205 | vperm | gcc -m64 -march=core2 -O2 -fomit-frame-pointer | 20140911 | 20140907 |
| 387600 | vperm | gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer | 20140911 | 20140907 |
| 387615 | vperm | gcc -m64 -march=core2 -O -fomit-frame-pointer | 20140911 | 20140907 |
| 388680 | vperm | gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | 20140911 | 20140907 |
| 388935 | vperm | gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer | 20140911 | 20140907 |
| 389782 | vperm | gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | 20140911 | 20140907 |
| 389895 | vperm | gcc -m64 -march=core2 -Os -fomit-frame-pointer | 20140911 | 20140907 |
| 390068 | vperm | gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | 20140911 | 20140907 |
| 390630 | vperm | gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer | 20140911 | 20140907 |
| 8911575 | ref | gcc -funroll-loops -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 8925750 | ref | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 8926110 | ref | gcc -funroll-loops -m64 -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 8940067 | ref | gcc -march=k8 -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 8943458 | ref | gcc -march=barcelona -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 8943645 | ref | gcc -m64 -march=k8 -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 8945685 | ref | gcc -m64 -march=barcelona -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 8966782 | ref | gcc -m64 -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 8967503 | ref | gcc -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 8971560 | ref | gcc -fno-schedule-insns -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 9042878 | ref | gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 9043080 | ref | gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 9048600 | ref | gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 9057698 | ref | gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 9143798 | ref | gcc -march=nocona -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 9159615 | ref | gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 9163103 | ref | gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 9164032 | ref | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 9165990 | ref | gcc -m64 -march=core2 -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 9167265 | ref | gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 9168120 | ref | gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 9169875 | ref | gcc -m64 -march=nocona -O3 -fomit-frame-pointer | 20140708 | 20140622 |
| 15581392 | ref | gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 15589755 | ref | gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 15680392 | ref | gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 15689040 | ref | gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 15775252 | ref | gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 15784282 | ref | gcc -funroll-loops -m64 -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 15787927 | ref | gcc -funroll-loops -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 17005987 | ref | gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 17007802 | ref | gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 17536290 | ref | gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer | 20140708 | 20140622 |
| 17544517 | ref | gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer | 20140708 | 20140622 |
| 18367410 | ref | gcc -funroll-loops -O -fomit-frame-pointer | 20140708 | 20140622 |
| 18559935 | ref | gcc -funroll-loops -m64 -O -fomit-frame-pointer | 20140708 | 20140622 |
| 18572235 | ref | gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | 20140708 | 20140622 |
| 18651368 | ref | gcc -funroll-loops -march=k8 -O -fomit-frame-pointer | 20140708 | 20140622 |
| 18816983 | ref | gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer | 20140708 | 20140622 |
| 18831968 | ref | gcc -funroll-loops -march=nocona -O -fomit-frame-pointer | 20140708 | 20140622 |
| 18849630 | ref | gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer | 20140708 | 20140622 |
| 21100005 | ref | gcc -march=nocona -O -fomit-frame-pointer | 20140708 | 20140622 |
| 21157598 | ref | gcc -m64 -march=nocona -O -fomit-frame-pointer | 20140708 | 20140622 |
| 21763703 | ref | gcc -m64 -march=barcelona -O -fomit-frame-pointer | 20140708 | 20140622 |
| 22076647 | ref | gcc -march=barcelona -O -fomit-frame-pointer | 20140708 | 20140622 |
| 22275315 | ref | gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer | 20140708 | 20140622 |
| 22306260 | ref | gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer | 20140708 | 20140622 |
| 22353937 | ref | gcc -fno-schedule-insns -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 22393605 | ref | gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | 20140708 | 20140622 |
| 22413232 | ref | gcc -m64 -march=core2 -O -fomit-frame-pointer | 20140708 | 20140622 |
| 22437383 | ref | gcc -m64 -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 22644773 | ref | gcc -m64 -march=k8 -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 22687493 | ref | gcc -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 23075610 | ref | gcc -m64 -march=nocona -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 23197237 | ref | gcc -march=nocona -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 23236823 | ref | gcc -m64 -march=k8 -O -fomit-frame-pointer | 20140708 | 20140622 |
| 23281035 | ref | gcc -O -fomit-frame-pointer | 20140708 | 20140622 |
| 23372737 | ref | gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 23396010 | ref | gcc -m64 -march=core2 -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 23560478 | ref | gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 23577112 | ref | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 23693670 | ref | gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 23910247 | ref | gcc -march=k8 -O -fomit-frame-pointer | 20140708 | 20140622 |
| 23978842 | ref | gcc -funroll-loops -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 24096653 | ref | gcc -fno-schedule-insns -O -fomit-frame-pointer | 20140708 | 20140622 |
| 24113415 | ref | gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 24114413 | ref | gcc -m64 -O -fomit-frame-pointer | 20140708 | 20140622 |
| 24192870 | ref | gcc -funroll-loops -m64 -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 24205328 | ref | gcc -march=k8 -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 24341767 | ref | gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 24664020 | ref | gcc -march=k8 -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 24670950 | ref | gcc -m64 -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 24675323 | ref | gcc -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 24812910 | ref | gcc -m64 -march=barcelona -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 24823958 | ref | gcc -m64 -march=nocona -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 24957480 | ref | gcc -march=barcelona -O2 -fomit-frame-pointer | 20140708 | 20140622 |
| 25106632 | ref | gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 25121880 | ref | gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 25132042 | ref | gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 25171372 | ref | gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 25373873 | ref | gcc -march=barcelona -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 25385767 | ref | gcc -march=nocona -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 25396777 | ref | gcc -fno-schedule-insns -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 25398540 | ref | gcc -m64 -march=barcelona -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 25403633 | ref | gcc -m64 -march=k8 -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 25550805 | ref | gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 25557533 | ref | gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 25557750 | ref | gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 25568798 | ref | gcc -m64 -march=core2 -Os -fomit-frame-pointer | 20140708 | 20140622 |
| 65155440 | ref | gcc | 20140708 | 20140622 |
| 65172412 | ref | cc | 20140708 | 20140622 |
| 65176012 | ref | gcc -funroll-loops | 20140708 | 20140622 |
| Compiler | Implementations
|
| cc | vperm |
| gcc | vperm |
| gcc -O2 -fomit-frame-pointer | vperm |
| gcc -O3 -fomit-frame-pointer | vperm |
| gcc -O -fomit-frame-pointer | vperm |
| gcc -Os -fomit-frame-pointer | vperm |
| gcc -fno-schedule-insns -O2 -fomit-frame-pointer | vperm |
| gcc -fno-schedule-insns -O3 -fomit-frame-pointer | vperm |
| gcc -fno-schedule-insns -O -fomit-frame-pointer | vperm |
| gcc -fno-schedule-insns -Os -fomit-frame-pointer | vperm |
| gcc -funroll-loops | vperm |
| gcc -funroll-loops -O2 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -O3 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -O -fomit-frame-pointer | vperm |
| gcc -funroll-loops -Os -fomit-frame-pointer | vperm |
| gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | vperm |
| gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | vperm |
| gcc -funroll-loops -m64 -O2 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -m64 -O3 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -m64 -O -fomit-frame-pointer | vperm |
| gcc -funroll-loops -m64 -Os -fomit-frame-pointer | vperm |
| gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer | vperm |
| gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer | vperm |
| gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer | vperm |
| gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer | vperm |
| gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer | vperm |
| gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer | vperm |
| gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer | vperm |
| gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer | vperm |
| gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -march=k8 -O -fomit-frame-pointer | vperm |
| gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer | vperm |
| gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer | vperm |
| gcc -funroll-loops -march=nocona -O -fomit-frame-pointer | vperm |
| gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer | vperm |
| gcc -m64 -O2 -fomit-frame-pointer | vperm |
| gcc -m64 -O3 -fomit-frame-pointer | vperm |
| gcc -m64 -O -fomit-frame-pointer | vperm |
| gcc -m64 -Os -fomit-frame-pointer | vperm |
| gcc -m64 -march=k8 -O2 -fomit-frame-pointer | vperm |
| gcc -m64 -march=k8 -O3 -fomit-frame-pointer | vperm |
| gcc -m64 -march=k8 -O -fomit-frame-pointer | vperm |
| gcc -m64 -march=k8 -Os -fomit-frame-pointer | vperm |
| gcc -m64 -march=nocona -O2 -fomit-frame-pointer | vperm |
| gcc -m64 -march=nocona -O3 -fomit-frame-pointer | vperm |
| gcc -m64 -march=nocona -O -fomit-frame-pointer | vperm |
| gcc -m64 -march=nocona -Os -fomit-frame-pointer | vperm |
| gcc -march=barcelona -O2 -fomit-frame-pointer | vperm |
| gcc -march=barcelona -O3 -fomit-frame-pointer | vperm |
| gcc -march=barcelona -O -fomit-frame-pointer | vperm |
| gcc -march=barcelona -Os -fomit-frame-pointer | vperm |
| gcc -march=k8 -O2 -fomit-frame-pointer | vperm |
| gcc -march=k8 -O3 -fomit-frame-pointer | vperm |
| gcc -march=k8 -O -fomit-frame-pointer | vperm |
| gcc -march=k8 -Os -fomit-frame-pointer | vperm |
| gcc -march=nocona -O2 -fomit-frame-pointer | vperm |
| gcc -march=nocona -O3 -fomit-frame-pointer | vperm |
| gcc -march=nocona -O -fomit-frame-pointer | vperm |
| gcc -march=nocona -Os -fomit-frame-pointer | vperm
|