| Time | Implementation | Compiler | Benchmark date | SUPERCOP version |
| 359745 | vperm | gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 360411 | vperm | gcc -m64 -march=core2 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 360652 | vperm | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 360683 | vperm | gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 361017 | vperm | gcc -m64 -march=core2 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 361097 | vperm | gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 361157 | vperm | gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 361321 | vperm | gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 361663 | vperm | gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 362077 | vperm | gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 362151 | vperm | gcc -m64 -march=core2 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 362154 | vperm | gcc -m64 -march=core2 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 362159 | vperm | gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 362162 | vperm | gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 362267 | vperm | gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer | 20150216 | 20141124 |
| 362355 | vperm | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 7768130 | ref | gcc -funroll-loops -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7788068 | ref | gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7794007 | ref | gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7797532 | ref | gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7799192 | ref | gcc -funroll-loops -m64 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7806182 | ref | gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7811925 | ref | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7837473 | ref | gcc -march=barcelona -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7852385 | ref | gcc -march=k8 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7852626 | ref | gcc -m64 -march=k8 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7865331 | ref | gcc -m64 -march=barcelona -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7877007 | ref | gcc -m64 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7883549 | ref | gcc -fno-schedule-insns -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7884034 | ref | gcc -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7957476 | ref | gcc -m64 -march=core2 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7960672 | ref | gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7961925 | ref | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 8108161 | ref | gcc -march=nocona -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 8110992 | ref | gcc -m64 -march=nocona -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 8193637 | ref | gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 8209509 | ref | gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 11305147 | ref | gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 11321504 | ref | gcc -funroll-loops -m64 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 11348158 | ref | gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 11355139 | ref | gcc -funroll-loops -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 11362066 | ref | gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 11397117 | ref | gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 11411403 | ref | gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 11512244 | ref | gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 12156085 | ref | gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 12479354 | ref | gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer | 20150216 | 20141124 |
| 12500837 | ref | gcc -funroll-loops -march=k8 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 12503726 | ref | gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 12506486 | ref | gcc -funroll-loops -O -fomit-frame-pointer | 20150216 | 20141124 |
| 12512839 | ref | gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | 20150216 | 20141124 |
| 12529958 | ref | gcc -funroll-loops -march=nocona -O -fomit-frame-pointer | 20150216 | 20141124 |
| 12564144 | ref | gcc -funroll-loops -m64 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 12720715 | ref | gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer | 20150216 | 20141124 |
| 12721873 | ref | gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer | 20150216 | 20141124 |
| 14869138 | ref | gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 17087304 | ref | gcc -m64 -march=nocona -O -fomit-frame-pointer | 20150216 | 20141124 |
| 17145534 | ref | gcc -march=nocona -O -fomit-frame-pointer | 20150216 | 20141124 |
| 17963798 | ref | gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 17964724 | ref | gcc -m64 -march=core2 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 18041853 | ref | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 18293499 | ref | gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 18320500 | ref | gcc -march=k8 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 18469089 | ref | gcc -fno-schedule-insns -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 18485454 | ref | gcc -m64 -march=k8 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 19002702 | ref | gcc -m64 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 19046466 | ref | gcc -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 19182358 | ref | gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19182602 | ref | gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19182718 | ref | gcc -funroll-loops -m64 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19184038 | ref | gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19184084 | ref | gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19188285 | ref | gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19209436 | ref | gcc -march=k8 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19210711 | ref | gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19211813 | ref | gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19227714 | ref | gcc -m64 -march=k8 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19242572 | ref | gcc -funroll-loops -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19379878 | ref | gcc -m64 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19381796 | ref | gcc -fno-schedule-insns -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19446065 | ref | gcc -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19470329 | ref | gcc -march=barcelona -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19470332 | ref | gcc -march=nocona -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 19470947 | ref | gcc -m64 -march=barcelona -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19483102 | ref | gcc -m64 -march=nocona -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 19525313 | ref | gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19532765 | ref | gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19533352 | ref | gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19590684 | ref | gcc -m64 -march=core2 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19719974 | ref | gcc -m64 -march=core2 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19720468 | ref | gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19720935 | ref | gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19722227 | ref | gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19723519 | ref | gcc -march=k8 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19723632 | ref | gcc -march=barcelona -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19725364 | ref | gcc -m64 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19726874 | ref | gcc -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19727624 | ref | gcc -m64 -march=k8 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19727916 | ref | gcc -m64 -march=barcelona -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19729551 | ref | gcc -fno-schedule-insns -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19782832 | ref | gcc -m64 -march=nocona -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19784053 | ref | gcc -march=nocona -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19829857 | ref | gcc -m64 -march=barcelona -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 19836770 | ref | gcc -march=barcelona -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 54957804 | ref | gcc | 20150216 | 20141124 |
| 54962145 | ref | gcc -funroll-loops | 20150216 | 20141124 |
| 54972937 | ref | cc | 20150216 | 20141124 |
| 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
|