| Time | Implementation | Compiler | Benchmark date | SUPERCOP version |
|---|---|---|---|---|
| 97840 | ref | clang++ -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | 20141018 | 20141014 |
| 97888 | ref | clang++ -O3 -fwrapv -march=native -fomit-frame-pointer | 20140927 | 20140907 |
| 97912 | ref | clang++ -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer | 20141018 | 20141014 |
| 98240 | ref | clang++ -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | 20140927 | 20140907 |
| 99936 | ref | clang++ -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | 20140927 | 20140907 |
| 101508 | ref | clang++ -O3 -fwrapv -mavx -fomit-frame-pointer | 20140927 | 20140907 |
| 101808 | ref | g++ -m64 -march=core-avx-i -O3 -fomit-frame-pointer | 20140927 | 20140907 |
| 101816 | ref | g++ -m64 -march=corei7-avx -O3 -fomit-frame-pointer | 20140927 | 20140907 |
| 102476 | ref | g++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | 20140927 | 20140907 |
| 103924 | ref | g++ -m64 -march=corei7-avx -O2 -fomit-frame-pointer | 20140927 | 20140907 |
| 104380 | ref | g++ -m64 -march=core-avx-i -O2 -fomit-frame-pointer | 20140927 | 20140907 |
| 104408 | ref | g++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | 20140927 | 20140907 |
| 106480 | ref | g++ -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer | 20140927 | 20140907 |
| 106528 | ref | g++ -m64 -march=corei7 -O3 -fomit-frame-pointer | 20140927 | 20140907 |
| 106720 | ref | g++ -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer | 20140927 | 20140907 |
| 106852 | ref | g++ -m64 -march=core2 -O3 -fomit-frame-pointer | 20140927 | 20140907 |
| 108908 | ref | g++ -m64 -march=corei7 -O2 -fomit-frame-pointer | 20140927 | 20140907 |
| 109088 | ref | g++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | 20140927 | 20140907 |
| 109652 | ref | g++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | 20140927 | 20140907 |
| 111236 | ref | g++ -m64 -march=core2 -O2 -fomit-frame-pointer | 20140927 | 20140907 |
| 115672 | ref | g++ -m64 -march=native -mtune=native -O -fomit-frame-pointer | 20140927 | 20140907 |
| 116412 | ref | g++ -m64 -march=core-avx-i -O -fomit-frame-pointer | 20140927 | 20140907 |
| 117208 | ref | g++ -m64 -march=core2 -O -fomit-frame-pointer | 20140927 | 20140907 |
| 117224 | ref | g++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer | 20140927 | 20140907 |
| 117436 | ref | g++ -m64 -march=corei7-avx -O -fomit-frame-pointer | 20140927 | 20140907 |
| 117532 | ref | g++ -m64 -march=corei7 -O -fomit-frame-pointer | 20140927 | 20140907 |
| 119284 | ref | g++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | 20140927 | 20140907 |
| 158256 | ref | g++ -m64 -march=core2 -Os -fomit-frame-pointer | 20140927 | 20140907 |
| 158268 | ref | g++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | 20140927 | 20140907 |
| 159100 | ref | g++ -m64 -march=corei7 -Os -fomit-frame-pointer | 20140927 | 20140907 |
| 159140 | ref | g++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | 20140927 | 20140907 |
| 159260 | ref | g++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer | 20140927 | 20140907 |
| 159600 | ref | g++ -m64 -march=core-avx-i -Os -fomit-frame-pointer | 20140927 | 20140907 |
| 160972 | ref | g++ -m64 -march=corei7-avx -Os -fomit-frame-pointer | 20140927 | 20140907 |
| Compiler | Implementations |
| clang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer | ref |
| clang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer | ref |
| g++ -m64 -march=core-avx2 -O2 -fomit-frame-pointer | ref |
| g++ -m64 -march=core-avx2 -O -fomit-frame-pointer | ref |
| g++ -m64 -march=core-avx2 -Os -fomit-frame-pointer | ref |
| Compiler | Implementations |
| clang++ -O3 -fomit-frame-pointer | ref |
| Compiler | Implementations |
| clang++ -O3 -fwrapv -march=native -fomit-frame-pointer | ref |
| clang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer | ref |
| clang++ -O3 -fwrapv -mavx -fomit-frame-pointer | ref |
| clang++ -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer | ref |
| Compiler | Implementations |
| clang++ -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | ref |
| clang++ -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | ref |
| clang++ -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | ref |
| Compiler | Implementations |
| clang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer | ref |
| Compiler | Implementations |
| g++ | ref |
| g++ -O2 -fomit-frame-pointer | ref |
| g++ -O3 -fomit-frame-pointer | ref |
| g++ -O -fomit-frame-pointer | ref |
| g++ -Os -fomit-frame-pointer | ref |
| g++ -fno-schedule-insns -O2 -fomit-frame-pointer | ref |
| g++ -fno-schedule-insns -O3 -fomit-frame-pointer | ref |
| g++ -fno-schedule-insns -O -fomit-frame-pointer | ref |
| g++ -fno-schedule-insns -Os -fomit-frame-pointer | ref |
| g++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | ref |
| g++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | ref |
| g++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | ref |
| g++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | ref |
| g++ -m64 -O2 -fomit-frame-pointer | ref |
| g++ -m64 -O3 -fomit-frame-pointer | ref |
| g++ -m64 -O -fomit-frame-pointer | ref |
| g++ -m64 -Os -fomit-frame-pointer | ref |
| g++ -m64 -march=k8 -O2 -fomit-frame-pointer | ref |
| g++ -m64 -march=k8 -O3 -fomit-frame-pointer | ref |
| g++ -m64 -march=k8 -O -fomit-frame-pointer | ref |
| g++ -m64 -march=k8 -Os -fomit-frame-pointer | ref |
| g++ -m64 -march=nocona -O2 -fomit-frame-pointer | ref |
| g++ -m64 -march=nocona -O3 -fomit-frame-pointer | ref |
| g++ -m64 -march=nocona -O -fomit-frame-pointer | ref |
| g++ -m64 -march=nocona -Os -fomit-frame-pointer | ref |
| g++ -march=barcelona -O2 -fomit-frame-pointer | ref |
| g++ -march=barcelona -O3 -fomit-frame-pointer | ref |
| g++ -march=barcelona -O -fomit-frame-pointer | ref |
| g++ -march=barcelona -Os -fomit-frame-pointer | ref |
| g++ -march=k8 -O2 -fomit-frame-pointer | ref |
| g++ -march=k8 -O3 -fomit-frame-pointer | ref |
| g++ -march=k8 -O -fomit-frame-pointer | ref |
| g++ -march=k8 -Os -fomit-frame-pointer | ref |
| g++ -march=nocona -O2 -fomit-frame-pointer | ref |
| g++ -march=nocona -O3 -fomit-frame-pointer | ref |
| g++ -march=nocona -O -fomit-frame-pointer | ref |
| g++ -march=nocona -Os -fomit-frame-pointer | ref |
| Compiler | Implementations |
| g++ -m64 -march=barcelona -O2 -fomit-frame-pointer | ref |
| g++ -m64 -march=barcelona -O3 -fomit-frame-pointer | ref |
| g++ -m64 -march=barcelona -O -fomit-frame-pointer | ref |
| g++ -m64 -march=barcelona -Os -fomit-frame-pointer | ref |