| Time | Implementation | Compiler | Benchmark date | SUPERCOP version |
| 285571 | ref | gcc -funroll-loops -m64 -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 285819 | ref | gcc -funroll-loops -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 285819 | ref | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 288704 | ref | gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 288803 | ref | gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 290528 | ref | gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 290811 | ref | gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 295047 | ref | gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 295099 | ref | gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 299629 | ref | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 299712 | ref | gcc -march=barcelona -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 299752 | ref | gcc -m64 -march=barcelona -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 299933 | ref | gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv | 20161020 | 20161009 |
| 301369 | ref | gcc -m64 -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 301536 | ref | gcc -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 301694 | ref | gcc -march=k8 -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 301888 | ref | gcc -m64 -march=k8 -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 301972 | ref | gcc -march=nocona -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 301992 | ref | gcc -m64 -march=nocona -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 302550 | ref | gcc -fno-schedule-insns -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 317022 | ref | gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 317069 | ref | gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 317325 | ref | gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 317352 | ref | gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 317520 | ref | gcc -funroll-loops -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 317661 | ref | gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 317981 | ref | gcc -funroll-loops -m64 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 318464 | ref | clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20161020 | 20161009 |
| 318470 | ref | clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20161020 | 20161009 |
| 318472 | ref | clang -O3 -fomit-frame-pointer -Qunused-arguments | 20161020 | 20161009 |
| 318606 | ref | clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20161020 | 20161009 |
| 335134 | ref | clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments | 20161020 | 20161009 |
| 335552 | ref | clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20161020 | 20161009 |
| 335745 | ref | gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 336035 | ref | gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 344624 | ref | gcc -funroll-loops -O -fomit-frame-pointer | 20161020 | 20161009 |
| 344642 | ref | gcc -funroll-loops -m64 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 344659 | ref | gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | 20161020 | 20161009 |
| 347101 | ref | gcc -funroll-loops -march=k8 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 347341 | ref | gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer | 20161020 | 20161009 |
| 347635 | ref | gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 347833 | ref | gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer | 20161020 | 20161009 |
| 349990 | ref | gcc -funroll-loops -march=nocona -O -fomit-frame-pointer | 20161020 | 20161009 |
| 350467 | ref | gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer | 20161020 | 20161009 |
| 350650 | ref | gcc -march=k8 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 350656 | ref | gcc -m64 -march=k8 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 351248 | ref | gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 351656 | ref | gcc -m64 -march=core2 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 351867 | ref | gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 352116 | ref | gcc -m64 -march=corei7 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 352205 | ref | gcc -m64 -march=corei7 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 352304 | ref | gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 352605 | ref | gcc -m64 -march=core2 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 352733 | ref | gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv | 20161020 | 20161009 |
| 352757 | ref | gcc -march=barcelona -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 353008 | ref | gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 353197 | ref | gcc -m64 -march=barcelona -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 353426 | ref | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 353454 | ref | gcc -m64 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 353456 | ref | gcc -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 353470 | ref | gcc -fno-schedule-insns -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 353512 | ref | gcc -m64 -march=k8 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 353558 | ref | gcc -march=k8 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 353562 | ref | gcc -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 353638 | ref | gcc -m64 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 353766 | ref | gcc -fno-schedule-insns -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 353858 | ref | gcc -funroll-loops -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 353869 | ref | gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 354040 | ref | gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 354080 | ref | gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 354330 | ref | gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 354338 | ref | gcc -funroll-loops -m64 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 354442 | ref | gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 361776 | ref | gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv | 20161020 | 20161009 |
| 361821 | ref | gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 361842 | ref | gcc -march=barcelona -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 361845 | ref | gcc -march=k8 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 362149 | ref | gcc -m64 -march=barcelona -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 362334 | ref | gcc -m64 -march=k8 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 362382 | ref | gcc -march=nocona -O -fomit-frame-pointer | 20161020 | 20161009 |
| 362440 | ref | gcc -m64 -march=nocona -O -fomit-frame-pointer | 20161020 | 20161009 |
| 365958 | ref | gcc -m64 -march=nocona -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 366064 | ref | gcc -march=nocona -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 366165 | ref | gcc -march=nocona -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 366306 | ref | gcc -m64 -march=nocona -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 369746 | ref | gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 369933 | ref | gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 371090 | ref | gcc -O -fomit-frame-pointer | 20161020 | 20161009 |
| 371184 | ref | gcc -fno-schedule-insns -O -fomit-frame-pointer | 20161020 | 20161009 |
| 371461 | ref | gcc -m64 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 379896 | ref | gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 380261 | ref | gcc -m64 -march=core2 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 380461 | ref | gcc -m64 -march=corei7 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 380714 | ref | gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 423473 | ref | gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer | 20161020 | 20161009 |
| 423480 | ref | gcc -march=barcelona -O -fomit-frame-pointer | 20161020 | 20161009 |
| 423531 | ref | gcc -m64 -march=barcelona -O -fomit-frame-pointer | 20161020 | 20161009 |
| 423965 | ref | gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv | 20161020 | 20161009 |
| 1082813 | ref | gcc -funroll-loops | 20161020 | 20161009 |
| 1083530 | ref | cc | 20161020 | 20161009 |
| 1083896 | ref | gcc | 20161020 | 20161009 |
| Compiler | Implementations
|
| cc | avx1 sse4 |
| clang -O3 -fomit-frame-pointer -Qunused-arguments | avx1 sse4 |
| clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments | avx1 sse4 |
| clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | avx1 sse4 |
| clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | avx1 sse4 |
| clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | avx1 sse4 |
| clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | avx1 sse4 |
| gcc | avx1 sse4 |
| gcc -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -O -fomit-frame-pointer | avx1 sse4 |
| gcc -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -fno-schedule-insns -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -fno-schedule-insns -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -fno-schedule-insns -O -fomit-frame-pointer | avx1 sse4 |
| gcc -fno-schedule-insns -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops | avx1 sse4 |
| gcc -funroll-loops -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -O -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -m64 -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -m64 -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -m64 -O -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -m64 -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -march=k8 -O -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -march=nocona -O -fomit-frame-pointer | avx1 sse4 |
| gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -O -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=core2 -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=core2 -O3 -fomit-frame-pointer | avx1 ref sse4 |
| gcc -m64 -march=core2 -O -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=core2 -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=corei7 -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=corei7 -O -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=corei7 -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=k8 -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=k8 -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=k8 -O -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=k8 -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=nocona -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=nocona -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=nocona -O -fomit-frame-pointer | avx1 sse4 |
| gcc -m64 -march=nocona -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -march=barcelona -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -march=barcelona -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -march=barcelona -O -fomit-frame-pointer | avx1 sse4 |
| gcc -march=barcelona -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -march=k8 -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -march=k8 -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -march=k8 -O -fomit-frame-pointer | avx1 sse4 |
| gcc -march=k8 -Os -fomit-frame-pointer | avx1 sse4 |
| gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv | avx1 sse4 |
| gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv | avx1 sse4 |
| gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv | avx1 sse4 |
| gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv | avx1 sse4 |
| gcc -march=nocona -O2 -fomit-frame-pointer | avx1 sse4 |
| gcc -march=nocona -O3 -fomit-frame-pointer | avx1 sse4 |
| gcc -march=nocona -O -fomit-frame-pointer | avx1 sse4 |
| gcc -march=nocona -Os -fomit-frame-pointer | avx1 sse4
|