| Time | Implementation | Compiler | Benchmark date | SUPERCOP version |
| 5044309 | ref | gcc -funroll-loops -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 5046397 | ref | gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 5056434 | ref | gcc -funroll-loops -m64 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 5109899 | ref | gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 5113619 | ref | gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 5171876 | ref | gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 5191391 | ref | gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 5544696 | ref | gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 5562856 | ref | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 5562968 | ref | gcc -funroll-loops -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 5564221 | ref | gcc -funroll-loops -m64 -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 5580552 | ref | gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 5632221 | ref | gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 5650923 | ref | gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 6795178 | ref | gcc -funroll-loops -march=k8 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 6807288 | ref | gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 6817675 | ref | gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer | 20161020 | 20161009 |
| 6831271 | ref | gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer | 20161020 | 20161009 |
| 6910664 | ref | gcc -funroll-loops -O -fomit-frame-pointer | 20161020 | 20161009 |
| 6913333 | ref | gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | 20161020 | 20161009 |
| 6915168 | ref | gcc -funroll-loops -m64 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 7024090 | ref | gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 7050709 | ref | gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 7087523 | ref | gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 7101196 | ref | gcc -m64 -march=nocona -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 7101219 | ref | gcc -march=nocona -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 7131230 | ref | gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 7148120 | ref | gcc -march=k8 -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 7148353 | ref | gcc -m64 -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 7148797 | ref | gcc -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 7148814 | ref | gcc -fno-schedule-insns -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 7174464 | ref | gcc -m64 -march=k8 -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 7200228 | ref | gcc -march=barcelona -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 7216593 | ref | gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer | 20161020 | 20161009 |
| 7221380 | ref | gcc -funroll-loops -march=nocona -O -fomit-frame-pointer | 20161020 | 20161009 |
| 7232236 | ref | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 7246253 | ref | gcc -m64 -march=barcelona -O3 -fomit-frame-pointer | 20161020 | 20161009 |
| 7246496 | ref | gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv | 20161020 | 20161009 |
| 8399733 | ref | clang -O3 -fomit-frame-pointer -Qunused-arguments | 20161020 | 20161009 |
| 8523392 | ref | clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20161020 | 20161009 |
| 8552780 | ref | clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20161020 | 20161009 |
| 8665605 | ref | clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments | 20161020 | 20161009 |
| 8668336 | ref | clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20161020 | 20161009 |
| 8684275 | ref | clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20161020 | 20161009 |
| 8826691 | ref | gcc -m64 -march=nocona -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 8891092 | ref | gcc -march=nocona -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 8967986 | ref | gcc -fno-schedule-insns -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 8980888 | ref | gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv | 20161020 | 20161009 |
| 9014220 | ref | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 9021298 | ref | gcc -m64 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 9043893 | ref | gcc -m64 -march=barcelona -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 9045648 | ref | gcc -m64 -march=k8 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 9075647 | ref | gcc -march=barcelona -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 9080331 | ref | gcc -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 9187192 | ref | gcc -march=k8 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 9391535 | ref | gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 9393056 | ref | gcc -m64 -march=core2 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 9398896 | ref | gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 9408355 | ref | gcc -funroll-loops -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 9415355 | ref | gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 9420685 | ref | gcc -m64 -march=corei7 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 9436976 | ref | gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 9449003 | ref | gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | 20161020 | 20161009 |
| 9461151 | ref | gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 9506874 | ref | gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv | 20161020 | 20161009 |
| 9542624 | ref | gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 9607774 | ref | gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 9621193 | ref | gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 9892448 | ref | gcc -march=k8 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 9981118 | ref | gcc -m64 -march=k8 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 10067314 | ref | gcc -O -fomit-frame-pointer | 20161020 | 20161009 |
| 10083667 | ref | gcc -fno-schedule-insns -O -fomit-frame-pointer | 20161020 | 20161009 |
| 10085333 | ref | gcc -m64 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 10199750 | ref | gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer | 20161020 | 20161009 |
| 10205208 | ref | gcc -march=barcelona -O -fomit-frame-pointer | 20161020 | 20161009 |
| 10233576 | ref | gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 10237336 | ref | gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 10253312 | ref | gcc -m64 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 10253612 | ref | gcc -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 10257024 | ref | gcc -m64 -march=nocona -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 10274420 | ref | gcc -march=barcelona -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 10294741 | ref | gcc -m64 -march=k8 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 10330206 | ref | gcc -march=nocona -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 10350622 | ref | gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv | 20161020 | 20161009 |
| 10389374 | ref | gcc -m64 -march=barcelona -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 10404986 | ref | gcc -m64 -march=core2 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 10410618 | ref | gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 10412184 | ref | gcc -march=k8 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 10412399 | ref | gcc -m64 -march=barcelona -O -fomit-frame-pointer | 20161020 | 20161009 |
| 10423450 | ref | gcc -fno-schedule-insns -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 10425608 | ref | gcc -march=nocona -O -fomit-frame-pointer | 20161020 | 20161009 |
| 10469037 | ref | gcc -m64 -march=corei7 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 10627437 | ref | gcc -m64 -march=nocona -O -fomit-frame-pointer | 20161020 | 20161009 |
| 10643906 | ref | gcc -m64 -march=core2 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 10662503 | ref | gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 10713686 | ref | gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 10761885 | ref | gcc -m64 -march=corei7 -O -fomit-frame-pointer | 20161020 | 20161009 |
| 11257168 | ref | gcc -funroll-loops -m64 -Os -fomit-frame-pointer | 20161020 | 20161009 |
| 45065018 | ref | cc | 20161020 | 20161009 |
| 45081443 | ref | gcc -funroll-loops | 20161020 | 20161009 |
| 45107166 | ref | gcc | 20161020 | 20161009 |
| Compiler | Implementations
|
| g++ -O2 -fomit-frame-pointer | avx2 |
| g++ -O3 -fomit-frame-pointer | avx2 |
| g++ -O -fomit-frame-pointer | avx2 |
| g++ -Os -fomit-frame-pointer | avx2 |
| g++ -fno-schedule-insns -O2 -fomit-frame-pointer | avx2 |
| g++ -fno-schedule-insns -O3 -fomit-frame-pointer | avx2 |
| g++ -fno-schedule-insns -O -fomit-frame-pointer | avx2 |
| g++ -fno-schedule-insns -Os -fomit-frame-pointer | avx2 |
| g++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | avx2 |
| g++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | avx2 |
| g++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | avx2 |
| g++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | avx2 |
| g++ -m64 -O2 -fomit-frame-pointer | avx2 |
| g++ -m64 -O3 -fomit-frame-pointer | avx2 |
| g++ -m64 -O -fomit-frame-pointer | avx2 |
| g++ -m64 -Os -fomit-frame-pointer | avx2 |
| g++ -m64 -march=core2 -O2 -fomit-frame-pointer | avx2 |
| g++ -m64 -march=core2 -O3 -fomit-frame-pointer | avx2 |
| g++ -m64 -march=core2 -O -fomit-frame-pointer | avx2 |
| g++ -m64 -march=core2 -Os -fomit-frame-pointer | avx2 |
| g++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | avx2 |
| g++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | avx2 |
| g++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | avx2 |
| g++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | avx2 |
| g++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer | avx2 |
| g++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | avx2 |
| g++ -m64 -march=corei7 -O2 -fomit-frame-pointer | avx2 |
| g++ -m64 -march=corei7 -O -fomit-frame-pointer | avx2 |
| g++ -m64 -march=corei7 -Os -fomit-frame-pointer | avx2 |
| g++ -m64 -march=k8 -O2 -fomit-frame-pointer | avx2 |
| g++ -m64 -march=k8 -O3 -fomit-frame-pointer | avx2 |
| g++ -m64 -march=k8 -O -fomit-frame-pointer | avx2 |
| g++ -m64 -march=k8 -Os -fomit-frame-pointer | avx2 |
| g++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | avx2 |
| g++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | avx2 |
| g++ -m64 -march=native -mtune=native -O -fomit-frame-pointer | avx2 |
| g++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer | avx2 |
| g++ -m64 -march=nocona -O2 -fomit-frame-pointer | avx2 |
| g++ -m64 -march=nocona -O3 -fomit-frame-pointer | avx2 |
| g++ -m64 -march=nocona -O -fomit-frame-pointer | avx2 |
| g++ -m64 -march=nocona -Os -fomit-frame-pointer | avx2 |
| g++ -march=barcelona -O2 -fomit-frame-pointer | avx2 |
| g++ -march=barcelona -O3 -fomit-frame-pointer | avx2 |
| g++ -march=barcelona -O -fomit-frame-pointer | avx2 |
| g++ -march=barcelona -Os -fomit-frame-pointer | avx2 |
| g++ -march=k8 -O2 -fomit-frame-pointer | avx2 |
| g++ -march=k8 -O3 -fomit-frame-pointer | avx2 |
| g++ -march=k8 -O -fomit-frame-pointer | avx2 |
| g++ -march=k8 -Os -fomit-frame-pointer | avx2 |
| g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv | avx2 |
| g++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv | avx2 |
| g++ -march=native -mtune=native -O -fomit-frame-pointer -fwrapv | avx2 |
| g++ -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv | avx2 |
| g++ -march=nocona -O2 -fomit-frame-pointer | avx2 |
| g++ -march=nocona -O3 -fomit-frame-pointer | avx2 |
| g++ -march=nocona -O -fomit-frame-pointer | avx2 |
| g++ -march=nocona -Os -fomit-frame-pointer | avx2
|