| Time | Implementation | Compiler | Benchmark date | SUPERCOP version |
| 306230 | vperm | gcc -m64 -march=core2 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 306484 | vperm | gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 306892 | vperm | gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer | 20150216 | 20141124 |
| 306901 | vperm | gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 306975 | vperm | gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 307000 | vperm | gcc -m64 -march=core2 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 307032 | vperm | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 307122 | vperm | gcc -m64 -march=core2 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 308295 | vperm | gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 308516 | vperm | gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 309029 | vperm | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 309227 | vperm | gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 309865 | vperm | gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 310148 | vperm | gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 310471 | vperm | gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 310686 | vperm | gcc -m64 -march=core2 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 7764591 | ref | gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7795925 | ref | gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7800966 | ref | gcc -funroll-loops -m64 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7802068 | ref | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7803207 | ref | gcc -funroll-loops -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7803280 | ref | gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7812364 | ref | gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7819229 | ref | gcc -m64 -march=barcelona -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7829197 | ref | gcc -m64 -march=k8 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7830840 | ref | gcc -march=k8 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7833892 | ref | gcc -march=barcelona -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7867940 | ref | gcc -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7870000 | ref | gcc -fno-schedule-insns -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7870768 | ref | gcc -m64 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7959405 | ref | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7959536 | ref | gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7960199 | ref | gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 7960205 | ref | gcc -m64 -march=core2 -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 8114653 | ref | gcc -march=nocona -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 8118239 | ref | gcc -m64 -march=nocona -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 8126057 | ref | gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 8126170 | ref | gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer | 20150216 | 20141124 |
| 11354700 | ref | gcc -funroll-loops -m64 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 11355388 | ref | gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 11390201 | ref | gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 11398565 | ref | gcc -funroll-loops -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 11424816 | ref | gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 11443904 | ref | gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 11487390 | ref | gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 12058446 | ref | gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 12315780 | ref | gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 12467409 | ref | gcc -funroll-loops -march=nocona -O -fomit-frame-pointer | 20150216 | 20141124 |
| 12495604 | ref | gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer | 20150216 | 20141124 |
| 12496241 | ref | gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer | 20150216 | 20141124 |
| 12527274 | ref | gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer | 20150216 | 20141124 |
| 12625271 | ref | gcc -funroll-loops -O -fomit-frame-pointer | 20150216 | 20141124 |
| 12626348 | ref | gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | 20150216 | 20141124 |
| 12684601 | ref | gcc -funroll-loops -m64 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 12878084 | ref | gcc -funroll-loops -march=k8 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 13141241 | ref | gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 17071046 | ref | gcc -m64 -march=nocona -O -fomit-frame-pointer | 20150216 | 20141124 |
| 17132665 | ref | gcc -march=nocona -O -fomit-frame-pointer | 20150216 | 20141124 |
| 17967623 | ref | gcc -m64 -march=core2 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 17967737 | ref | gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 17967849 | ref | gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 18029911 | ref | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 18310499 | ref | gcc -march=barcelona -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 18316398 | ref | gcc -m64 -march=barcelona -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 18342487 | ref | gcc -fno-schedule-insns -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 18406492 | ref | gcc -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 18407062 | ref | gcc -m64 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 18439427 | ref | gcc -m64 -march=k8 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 18585165 | ref | gcc -march=nocona -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 18653797 | ref | gcc -march=barcelona -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 18654168 | ref | gcc -fno-schedule-insns -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 18654318 | ref | gcc -m64 -march=k8 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 18654630 | ref | gcc -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 18654797 | ref | gcc -march=k8 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 18656554 | ref | gcc -m64 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 18657446 | ref | gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 18665198 | ref | gcc -m64 -march=core2 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 18672134 | ref | gcc -m64 -march=barcelona -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 18692531 | ref | gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 18704998 | ref | gcc -m64 -march=nocona -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 18723630 | ref | gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19185520 | ref | gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19193079 | ref | gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19209042 | ref | gcc -m64 -march=k8 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19219242 | ref | gcc -funroll-loops -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19227037 | ref | gcc -march=k8 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19236486 | ref | gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19252355 | ref | gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19400655 | ref | gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 19471936 | ref | gcc -m64 -march=barcelona -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19474472 | ref | gcc -march=barcelona -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19504491 | ref | gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19505701 | ref | gcc -m64 -march=core2 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19511475 | ref | gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19570046 | ref | gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19613059 | ref | gcc -m64 -march=nocona -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 19614977 | ref | gcc -march=k8 -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 19648747 | ref | gcc -m64 -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19650694 | ref | gcc -fno-schedule-insns -O -fomit-frame-pointer | 20150216 | 20141124 |
| 19662841 | ref | gcc -march=nocona -O2 -fomit-frame-pointer | 20150216 | 20141124 |
| 19713705 | ref | gcc -O -fomit-frame-pointer | 20150216 | 20141124 |
| 20165694 | ref | gcc -funroll-loops -m64 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 20211728 | ref | gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 20309427 | ref | gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer | 20150216 | 20141124 |
| 54005863 | ref | gcc | 20150216 | 20141124 |
| 54012955 | ref | cc | 20150216 | 20141124 |
| 54025215 | ref | gcc -funroll-loops | 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
|