| Time | Implementation | Compiler | Benchmark date | SUPERCOP version |
| 118210 | ref | gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 118752 | ref | clang -O3 -fomit-frame-pointer -Qunused-arguments | 20161216 | 20161026 |
| 118758 | ref | gcc -funroll-loops -m64 -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 119310 | ref | gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 119376 | ref | gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 119940 | ref | gcc -funroll-loops -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 120088 | ref | gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 120280 | ref | clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20161216 | 20161026 |
| 120460 | ref | gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 120736 | ref | clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20161216 | 20161026 |
| 120742 | ref | clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20161216 | 20161026 |
| 120882 | ref | gcc -funroll-loops -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 121262 | ref | gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 121264 | ref | gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 121324 | ref | gcc -m64 -march=nocona -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 121580 | ref | gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 121652 | ref | gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 121668 | ref | gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 121772 | ref | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 121790 | ref | gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 121812 | ref | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 121936 | ref | gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 121936 | ref | gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 122036 | ref | gcc -march=barcelona -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 122046 | ref | gcc -funroll-loops -m64 -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 122060 | ref | gcc -m64 -march=barcelona -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 122112 | ref | clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments | 20161216 | 20161026 |
| 122192 | ref | clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments | 20161216 | 20161026 |
| 122486 | ref | gcc -march=nocona -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 122516 | ref | gcc -march=k8 -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 122546 | ref | gcc -march=barcelona -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 122588 | ref | gcc -m64 -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 122680 | ref | gcc -m64 -march=k8 -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 122744 | ref | gcc -fno-schedule-insns -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 122918 | ref | gcc -m64 -march=k8 -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 122988 | ref | gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 123156 | ref | gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 123166 | ref | gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv | 20161216 | 20161026 |
| 123292 | ref | gcc -fno-schedule-insns -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 123296 | ref | gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 123444 | ref | gcc -march=k8 -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 123652 | ref | gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 123770 | ref | gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 123888 | ref | gcc -m64 -march=corei7 -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 123964 | ref | gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 123982 | ref | gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 124004 | ref | clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments | 20161216 | 20161026 |
| 124100 | ref | gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 124114 | ref | gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 124128 | ref | gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 124138 | ref | clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments | 20161216 | 20161026 |
| 124182 | ref | gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 124202 | ref | gcc -m64 -march=corei7 -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 124492 | ref | gcc -m64 -march=core2 -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 124496 | ref | gcc -funroll-loops -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 124754 | ref | gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 124818 | ref | gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 124992 | ref | gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 125042 | ref | gcc -funroll-loops -march=nocona -O -fomit-frame-pointer | 20161216 | 20161026 |
| 125090 | ref | gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 125144 | ref | gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 125154 | ref | gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 125258 | ref | gcc -funroll-loops -O -fomit-frame-pointer | 20161216 | 20161026 |
| 125258 | ref | gcc -funroll-loops -march=k8 -O -fomit-frame-pointer | 20161216 | 20161026 |
| 125352 | ref | clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments | 20161216 | 20161026 |
| 125394 | ref | gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer | 20161216 | 20161026 |
| 125412 | ref | gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer | 20161216 | 20161026 |
| 125590 | ref | gcc -march=nocona -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 125594 | ref | gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer | 20161216 | 20161026 |
| 125608 | ref | gcc -funroll-loops -m64 -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 125962 | ref | gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer | 20161216 | 20161026 |
| 126134 | ref | gcc -m64 -march=barcelona -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 126458 | ref | gcc -m64 -march=nocona -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 126794 | ref | gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | 20161216 | 20161026 |
| 127036 | ref | gcc -m64 -march=nocona -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 127080 | ref | gcc -funroll-loops -m64 -O -fomit-frame-pointer | 20161216 | 20161026 |
| 127524 | ref | gcc -m64 -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 127710 | ref | clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20161216 | 20161026 |
| 127734 | ref | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 127854 | ref | gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 127908 | ref | gcc -m64 -march=barcelona -O -fomit-frame-pointer | 20161216 | 20161026 |
| 128178 | ref | gcc -O2 -fomit-frame-pointer | 20161216 | 20161026 |
| 128400 | ref | gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 128452 | ref | gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 128860 | ref | gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 128880 | ref | gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv | 20161216 | 20161026 |
| 129044 | ref | gcc -march=barcelona -O -fomit-frame-pointer | 20161216 | 20161026 |
| 129200 | ref | gcc -march=nocona -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 129440 | ref | gcc -m64 -march=core2 -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 129552 | ref | gcc -m64 -march=k8 -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 129766 | ref | gcc -march=k8 -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 129948 | ref | gcc -fno-schedule-insns -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 129956 | ref | gcc -m64 -march=corei7 -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 129988 | ref | gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv | 20161216 | 20161026 |
| 130226 | ref | gcc -m64 -march=core2 -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 130696 | ref | gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 130922 | ref | gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 131010 | ref | gcc -march=barcelona -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 131136 | ref | gcc -O3 -fomit-frame-pointer | 20161216 | 20161026 |
| 131186 | ref | gcc -m64 -march=core2 -O -fomit-frame-pointer | 20161216 | 20161026 |
| 131188 | ref | gcc -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 131272 | ref | gcc -m64 -march=barcelona -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 131766 | ref | gcc -m64 -Os -fomit-frame-pointer | 20161216 | 20161026 |
| 131958 | ref | gcc -m64 -march=corei7-avx -O -fomit-frame-pointer | 20161216 | 20161026 |
| 132048 | ref | gcc -m64 -march=core-avx-i -O -fomit-frame-pointer | 20161216 | 20161026 |
| 132154 | ref | gcc -m64 -march=corei7 -O -fomit-frame-pointer | 20161216 | 20161026 |
| 132784 | ref | gcc -O -fomit-frame-pointer | 20161216 | 20161026 |
| 133100 | ref | gcc -m64 -O -fomit-frame-pointer | 20161216 | 20161026 |
| 133392 | ref | gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer | 20161216 | 20161026 |
| 133606 | ref | gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | 20161216 | 20161026 |
| 135370 | ref | gcc -fno-schedule-insns -O -fomit-frame-pointer | 20161216 | 20161026 |
| 136278 | ref | gcc -m64 -march=core-avx2 -O -fomit-frame-pointer | 20161216 | 20161026 |
| 136658 | ref | gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv | 20161216 | 20161026 |
| 137040 | ref | gcc -m64 -march=nocona -O -fomit-frame-pointer | 20161216 | 20161026 |
| 137420 | ref | gcc -march=nocona -O -fomit-frame-pointer | 20161216 | 20161026 |
| 137452 | ref | gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer | 20161216 | 20161026 |
| 138782 | ref | gcc -march=k8 -O -fomit-frame-pointer | 20161216 | 20161026 |
| 143652 | ref | gcc -m64 -march=k8 -O -fomit-frame-pointer | 20161216 | 20161026 |
| 310150 | ref | cc | 20161216 | 20161026 |
| 311744 | ref | gcc | 20161216 | 20161026 |
| 316518 | ref | gcc -funroll-loops | 20161216 | 20161026 |
| Compiler | Implementations
|
| cc | ref |
| gcc | ref |
| gcc -O2 -fomit-frame-pointer | ref |
| gcc -O3 -fomit-frame-pointer | ref |
| gcc -O -fomit-frame-pointer | ref |
| gcc -Os -fomit-frame-pointer | ref |
| gcc -fno-schedule-insns -O2 -fomit-frame-pointer | ref |
| gcc -fno-schedule-insns -O3 -fomit-frame-pointer | ref |
| gcc -fno-schedule-insns -O -fomit-frame-pointer | ref |
| gcc -fno-schedule-insns -Os -fomit-frame-pointer | ref |
| gcc -funroll-loops | ref |
| gcc -funroll-loops -O2 -fomit-frame-pointer | ref |
| gcc -funroll-loops -O3 -fomit-frame-pointer | ref |
| gcc -funroll-loops -O -fomit-frame-pointer | ref |
| gcc -funroll-loops -Os -fomit-frame-pointer | ref |
| gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | ref |
| gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | ref |
| gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | ref |
| gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | ref |
| gcc -funroll-loops -m64 -O2 -fomit-frame-pointer | ref |
| gcc -funroll-loops -m64 -O3 -fomit-frame-pointer | ref |
| gcc -funroll-loops -m64 -O -fomit-frame-pointer | ref |
| gcc -funroll-loops -m64 -Os -fomit-frame-pointer | ref |
| gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer | ref |
| gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer | ref |
| gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer | ref |
| gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer | ref |
| gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer | ref |
| gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer | ref |
| gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer | ref |
| gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer | ref |
| gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer | ref |
| gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer | ref |
| gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer | ref |
| gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer | ref |
| gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer | ref |
| gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer | ref |
| gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer | ref |
| gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer | ref |
| gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer | ref |
| gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer | ref |
| gcc -funroll-loops -march=k8 -O -fomit-frame-pointer | ref |
| gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer | ref |
| gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer | ref |
| gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer | ref |
| gcc -funroll-loops -march=nocona -O -fomit-frame-pointer | ref |
| gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer | ref |
| gcc -m64 -O2 -fomit-frame-pointer | ref |
| gcc -m64 -O3 -fomit-frame-pointer | ref |
| gcc -m64 -O -fomit-frame-pointer | ref |
| gcc -m64 -Os -fomit-frame-pointer | ref |
| gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer | ref |
| gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer | ref |
| gcc -m64 -march=core-avx-i -O -fomit-frame-pointer | ref |
| gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer | ref |
| gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer | ref |
| gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer | ref |
| gcc -m64 -march=core-avx2 -O -fomit-frame-pointer | ref |
| gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer | ref |
| gcc -m64 -march=core2 -O2 -fomit-frame-pointer | ref |
| gcc -m64 -march=core2 -O3 -fomit-frame-pointer | ref |
| gcc -m64 -march=core2 -O -fomit-frame-pointer | ref |
| gcc -m64 -march=core2 -Os -fomit-frame-pointer | ref |
| gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | ref |
| gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer | ref |
| gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | ref |
| gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | ref |
| gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | ref |
| gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer | ref |
| gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer | ref |
| gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | ref |
| gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer | ref |
| gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer | ref |
| gcc -m64 -march=corei7-avx -O -fomit-frame-pointer | ref |
| gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer | ref |
| gcc -m64 -march=corei7 -O2 -fomit-frame-pointer | ref |
| gcc -m64 -march=corei7 -O3 -fomit-frame-pointer | ref |
| gcc -m64 -march=corei7 -O -fomit-frame-pointer | ref |
| gcc -m64 -march=corei7 -Os -fomit-frame-pointer | ref |
| gcc -m64 -march=k8 -O2 -fomit-frame-pointer | ref |
| gcc -m64 -march=k8 -O3 -fomit-frame-pointer | ref |
| gcc -m64 -march=k8 -O -fomit-frame-pointer | ref |
| gcc -m64 -march=k8 -Os -fomit-frame-pointer | ref |
| gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | ref |
| gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | ref |
| gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer | ref |
| gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer | ref |
| gcc -m64 -march=nocona -O2 -fomit-frame-pointer | ref |
| gcc -m64 -march=nocona -O3 -fomit-frame-pointer | ref |
| gcc -m64 -march=nocona -O -fomit-frame-pointer | ref |
| gcc -m64 -march=nocona -Os -fomit-frame-pointer | ref |
| gcc -march=barcelona -O2 -fomit-frame-pointer | ref |
| gcc -march=barcelona -O3 -fomit-frame-pointer | ref |
| gcc -march=barcelona -O -fomit-frame-pointer | ref |
| gcc -march=barcelona -Os -fomit-frame-pointer | ref |
| gcc -march=k8 -O2 -fomit-frame-pointer | ref |
| gcc -march=k8 -O3 -fomit-frame-pointer | ref |
| gcc -march=k8 -O -fomit-frame-pointer | ref |
| gcc -march=k8 -Os -fomit-frame-pointer | ref |
| gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv | ref |
| gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv | ref |
| gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv | ref |
| gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv | ref |
| gcc -march=nocona -O2 -fomit-frame-pointer | ref |
| gcc -march=nocona -O3 -fomit-frame-pointer | ref |
| gcc -march=nocona -O -fomit-frame-pointer | ref |
| gcc -march=nocona -Os -fomit-frame-pointer | ref
|