| Time | Implementation | Compiler | Benchmark date | SUPERCOP version |
|---|---|---|---|---|
| 8710164 | ref | clang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer | 20141017 | 20141014 |
| 8711109 | ref | clang++ -O3 -fomit-frame-pointer | 20141017 | 20141014 |
| 8713626 | ref | clang++ -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | 20141017 | 20141014 |
| 8717391 | ref | clang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer | 20141017 | 20141014 |
| 8718717 | ref | clang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | 20141017 | 20141014 |
| 8801742 | ref | g++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | 20141017 | 20141014 |
| 8898357 | ref | g++ -m64 -march=core2 -O3 -fomit-frame-pointer | 20141017 | 20141014 |
| 8939652 | ref | g++ -fno-schedule-insns -O3 -fomit-frame-pointer | 20141017 | 20141014 |
| 8941287 | ref | g++ -O3 -fomit-frame-pointer | 20141017 | 20141014 |
| 8947863 | ref | g++ -m64 -O3 -fomit-frame-pointer | 20141017 | 20141014 |
| 8993223 | ref | g++ -march=barcelona -O3 -fomit-frame-pointer | 20141017 | 20141014 |
| 8996970 | ref | g++ -m64 -march=k8 -O3 -fomit-frame-pointer | 20141017 | 20141014 |
| 9000312 | ref | g++ -march=k8 -O3 -fomit-frame-pointer | 20141017 | 20141014 |
| 9003492 | ref | g++ -m64 -march=barcelona -O3 -fomit-frame-pointer | 20141017 | 20141014 |
| 9008706 | ref | g++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | 20141017 | 20141014 |
| 9100776 | ref | g++ -m64 -march=nocona -O3 -fomit-frame-pointer | 20141017 | 20141014 |
| 9102372 | ref | g++ -march=nocona -O3 -fomit-frame-pointer | 20141017 | 20141014 |
| 10825839 | ref | g++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | 20141017 | 20141014 |
| 12318159 | ref | g++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | 20141017 | 20141014 |
| 16624845 | ref | g++ -fno-schedule-insns -O2 -fomit-frame-pointer | 20141017 | 20141014 |
| 16628319 | ref | g++ -m64 -march=core2 -O2 -fomit-frame-pointer | 20141017 | 20141014 |
| 16632963 | ref | g++ -m64 -march=corei7 -O2 -fomit-frame-pointer | 20141017 | 20141014 |
| 16634001 | ref | g++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | 20141017 | 20141014 |
| 16634346 | ref | g++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | 20141017 | 20141014 |
| 16651659 | ref | g++ -O2 -fomit-frame-pointer | 20141017 | 20141014 |
| 16651761 | ref | g++ -m64 -O2 -fomit-frame-pointer | 20141017 | 20141014 |
| 16676205 | ref | g++ -m64 -march=k8 -O2 -fomit-frame-pointer | 20141017 | 20141014 |
| 16679271 | ref | g++ -march=k8 -O2 -fomit-frame-pointer | 20141017 | 20141014 |
| 16814655 | ref | g++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | 20141017 | 20141014 |
| 16817022 | ref | g++ -m64 -march=barcelona -O2 -fomit-frame-pointer | 20141017 | 20141014 |
| 16817106 | ref | g++ -march=barcelona -O2 -fomit-frame-pointer | 20141017 | 20141014 |
| 16819263 | ref | g++ -m64 -march=nocona -O2 -fomit-frame-pointer | 20141017 | 20141014 |
| 16822617 | ref | g++ -march=nocona -O2 -fomit-frame-pointer | 20141017 | 20141014 |
| 16998822 | ref | g++ -fno-schedule-insns -Os -fomit-frame-pointer | 20141017 | 20141014 |
| 17001009 | ref | g++ -m64 -Os -fomit-frame-pointer | 20141017 | 20141014 |
| 17001342 | ref | g++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer | 20141017 | 20141014 |
| 17008200 | ref | g++ -m64 -march=k8 -Os -fomit-frame-pointer | 20141017 | 20141014 |
| 17009268 | ref | g++ -Os -fomit-frame-pointer | 20141017 | 20141014 |
| 17011644 | ref | g++ -march=barcelona -Os -fomit-frame-pointer | 20141017 | 20141014 |
| 17011650 | ref | g++ -march=k8 -Os -fomit-frame-pointer | 20141017 | 20141014 |
| 17012547 | ref | g++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | 20141017 | 20141014 |
| 17012745 | ref | g++ -m64 -march=core2 -Os -fomit-frame-pointer | 20141017 | 20141014 |
| 17014017 | ref | g++ -m64 -march=barcelona -Os -fomit-frame-pointer | 20141017 | 20141014 |
| 17015343 | ref | g++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | 20141017 | 20141014 |
| 17021196 | ref | g++ -m64 -march=corei7 -Os -fomit-frame-pointer | 20141017 | 20141014 |
| 17046762 | ref | g++ -m64 -march=nocona -Os -fomit-frame-pointer | 20141017 | 20141014 |
| 17047518 | ref | g++ -march=nocona -Os -fomit-frame-pointer | 20141017 | 20141014 |
| 17739150 | ref | g++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | 20141017 | 20141014 |
| 18104094 | ref | g++ -m64 -march=k8 -O -fomit-frame-pointer | 20141017 | 20141014 |
| 18108012 | ref | g++ -march=k8 -O -fomit-frame-pointer | 20141017 | 20141014 |
| 18191511 | ref | g++ -m64 -march=barcelona -O -fomit-frame-pointer | 20141017 | 20141014 |
| 18196230 | ref | g++ -m64 -march=native -mtune=native -O -fomit-frame-pointer | 20141017 | 20141014 |
| 18199617 | ref | g++ -march=barcelona -O -fomit-frame-pointer | 20141017 | 20141014 |
| 18309264 | ref | g++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | 20141017 | 20141014 |
| 18310434 | ref | g++ -m64 -march=corei7 -O -fomit-frame-pointer | 20141017 | 20141014 |
| 18316584 | ref | g++ -O -fomit-frame-pointer | 20141017 | 20141014 |
| 18316584 | ref | g++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer | 20141017 | 20141014 |
| 18317610 | ref | g++ -fno-schedule-insns -O -fomit-frame-pointer | 20141017 | 20141014 |
| 18318408 | ref | g++ -m64 -O -fomit-frame-pointer | 20141017 | 20141014 |
| 18319419 | ref | g++ -m64 -march=core2 -O -fomit-frame-pointer | 20141017 | 20141014 |
| 18651798 | ref | g++ -m64 -march=nocona -O -fomit-frame-pointer | 20141017 | 20141014 |
| 18652383 | ref | g++ -march=nocona -O -fomit-frame-pointer | 20141017 | 20141014 |
| 68917635 | ref | g++ | 20141017 | 20141014 |
| Compiler | Implementations |
| clang++ -O3 -fomit-frame-pointer | aesni |
| Compiler | Implementations |
| clang++ -O3 -fomit-frame-pointer | opt-win-aes |
| Compiler | Implementations |
| clang++ -O3 -fomit-frame-pointer | ref |
| Compiler | Implementations |
| clang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer | aesni |
| Compiler | Implementations |
| clang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer | opt-win-aes |
| Compiler | Implementations |
| clang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer | ref |
| Compiler | Implementations |
| clang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | aesni |
| Compiler | Implementations |
| clang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | opt-win-aes |
| Compiler | Implementations |
| clang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | ref |
| Compiler | Implementations |
| clang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer | aesni |
| Compiler | Implementations |
| clang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer | opt-win-aes |
| Compiler | Implementations |
| clang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer | ref |
| Compiler | Implementations |
| clang++ -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | aesni |
| Compiler | Implementations |
| clang++ -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | opt-win-aes |
| Compiler | Implementations |
| clang++ -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | ref |
| Compiler | Implementations |
| g++ | opt-win-aes |
| g++ -O2 -fomit-frame-pointer | opt-win-aes |
| g++ -O3 -fomit-frame-pointer | opt-win-aes |
| g++ -O -fomit-frame-pointer | opt-win-aes |
| g++ -Os -fomit-frame-pointer | opt-win-aes |
| g++ -fno-schedule-insns -O2 -fomit-frame-pointer | opt-win-aes |
| g++ -fno-schedule-insns -O3 -fomit-frame-pointer | opt-win-aes |
| g++ -fno-schedule-insns -O -fomit-frame-pointer | opt-win-aes |
| g++ -fno-schedule-insns -Os -fomit-frame-pointer | opt-win-aes |
| g++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | opt-win-aes |
| g++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | opt-win-aes |
| g++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | opt-win-aes |
| g++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -O2 -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -O3 -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -O -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -Os -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=core2 -O2 -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=core2 -O3 -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=core2 -O -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=core2 -Os -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=corei7 -O2 -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=corei7 -O -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=corei7 -Os -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=k8 -O2 -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=k8 -O3 -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=k8 -O -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=k8 -Os -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=native -mtune=native -O -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=nocona -O2 -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=nocona -O3 -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=nocona -O -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=nocona -Os -fomit-frame-pointer | opt-win-aes |
| g++ -march=barcelona -O2 -fomit-frame-pointer | opt-win-aes |
| g++ -march=barcelona -O3 -fomit-frame-pointer | opt-win-aes |
| g++ -march=barcelona -O -fomit-frame-pointer | opt-win-aes |
| g++ -march=barcelona -Os -fomit-frame-pointer | opt-win-aes |
| g++ -march=k8 -O2 -fomit-frame-pointer | opt-win-aes |
| g++ -march=k8 -O3 -fomit-frame-pointer | opt-win-aes |
| g++ -march=k8 -O -fomit-frame-pointer | opt-win-aes |
| g++ -march=k8 -Os -fomit-frame-pointer | opt-win-aes |
| g++ -march=nocona -O2 -fomit-frame-pointer | opt-win-aes |
| g++ -march=nocona -O3 -fomit-frame-pointer | opt-win-aes |
| g++ -march=nocona -O -fomit-frame-pointer | opt-win-aes |
| g++ -march=nocona -Os -fomit-frame-pointer | opt-win-aes |
| Compiler | Implementations |
| g++ | aesni |
| g++ -O2 -fomit-frame-pointer | aesni |
| g++ -O3 -fomit-frame-pointer | aesni |
| g++ -O -fomit-frame-pointer | aesni |
| g++ -Os -fomit-frame-pointer | aesni |
| g++ -fno-schedule-insns -O2 -fomit-frame-pointer | aesni |
| g++ -fno-schedule-insns -O3 -fomit-frame-pointer | aesni |
| g++ -fno-schedule-insns -O -fomit-frame-pointer | aesni |
| g++ -fno-schedule-insns -Os -fomit-frame-pointer | aesni |
| g++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | aesni |
| g++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | aesni |
| g++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | aesni |
| g++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | aesni |
| g++ -m64 -O2 -fomit-frame-pointer | aesni |
| g++ -m64 -O3 -fomit-frame-pointer | aesni |
| g++ -m64 -O -fomit-frame-pointer | aesni |
| g++ -m64 -Os -fomit-frame-pointer | aesni |
| g++ -m64 -march=core2 -O2 -fomit-frame-pointer | aesni |
| g++ -m64 -march=core2 -O3 -fomit-frame-pointer | aesni |
| g++ -m64 -march=core2 -O -fomit-frame-pointer | aesni |
| g++ -m64 -march=core2 -Os -fomit-frame-pointer | aesni |
| g++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | aesni |
| g++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | aesni |
| g++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | aesni |
| g++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | aesni |
| g++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer | aesni |
| g++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | aesni |
| g++ -m64 -march=corei7 -O2 -fomit-frame-pointer | aesni |
| g++ -m64 -march=corei7 -O -fomit-frame-pointer | aesni |
| g++ -m64 -march=corei7 -Os -fomit-frame-pointer | aesni |
| g++ -m64 -march=k8 -O2 -fomit-frame-pointer | aesni |
| g++ -m64 -march=k8 -O3 -fomit-frame-pointer | aesni |
| g++ -m64 -march=k8 -O -fomit-frame-pointer | aesni |
| g++ -m64 -march=k8 -Os -fomit-frame-pointer | aesni |
| g++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | aesni |
| g++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | aesni |
| g++ -m64 -march=native -mtune=native -O -fomit-frame-pointer | aesni |
| g++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer | aesni |
| g++ -m64 -march=nocona -O2 -fomit-frame-pointer | aesni |
| g++ -m64 -march=nocona -O3 -fomit-frame-pointer | aesni |
| g++ -m64 -march=nocona -O -fomit-frame-pointer | aesni |
| g++ -m64 -march=nocona -Os -fomit-frame-pointer | aesni |
| g++ -march=barcelona -O2 -fomit-frame-pointer | aesni |
| g++ -march=barcelona -O3 -fomit-frame-pointer | aesni |
| g++ -march=barcelona -O -fomit-frame-pointer | aesni |
| g++ -march=barcelona -Os -fomit-frame-pointer | aesni |
| g++ -march=k8 -O2 -fomit-frame-pointer | aesni |
| g++ -march=k8 -O3 -fomit-frame-pointer | aesni |
| g++ -march=k8 -O -fomit-frame-pointer | aesni |
| g++ -march=k8 -Os -fomit-frame-pointer | aesni |
| g++ -march=nocona -O2 -fomit-frame-pointer | aesni |
| g++ -march=nocona -O3 -fomit-frame-pointer | aesni |
| g++ -march=nocona -O -fomit-frame-pointer | aesni |
| g++ -march=nocona -Os -fomit-frame-pointer | aesni |
| Compiler | Implementations |
| g++ -m64 -march=barcelona -O2 -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=barcelona -O3 -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=barcelona -O -fomit-frame-pointer | opt-win-aes |
| g++ -m64 -march=barcelona -Os -fomit-frame-pointer | opt-win-aes |
| Compiler | Implementations |
| g++ -m64 -march=barcelona -O2 -fomit-frame-pointer | aesni |
| g++ -m64 -march=barcelona -O3 -fomit-frame-pointer | aesni |
| g++ -m64 -march=barcelona -O -fomit-frame-pointer | aesni |
| g++ -m64 -march=barcelona -Os -fomit-frame-pointer | aesni |