| Time | Implementation | Compiler | Benchmark date | SUPERCOP version |
| 392754 | ref | gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | 20140601 | 20140525 |
| 393592 | ref | gcc -fno-schedule-insns -Os -fomit-frame-pointer | 20140601 | 20140525 |
| 420748 | ref | gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | 20140601 | 20140525 |
| 420818 | ref | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | 20140601 | 20140525 |
| 429956 | ref | gcc -fno-schedule-insns -O3 -fomit-frame-pointer | 20140601 | 20140525 |
| 434962 | ref | gcc -fno-schedule-insns -O2 -fomit-frame-pointer | 20140601 | 20140525 |
| 469300 | ref | gcc -funroll-loops -mabi=32 -O -fomit-frame-pointer | 20140601 | 20140525 |
| 469308 | ref | gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | 20140601 | 20140525 |
| 469310 | ref | gcc -funroll-loops -O -fomit-frame-pointer | 20140601 | 20140525 |
| 475916 | ref | gcc -mabi=32 -O -fomit-frame-pointer | 20140601 | 20140525 |
| 475918 | ref | gcc -fno-schedule-insns -O -fomit-frame-pointer | 20140601 | 20140525 |
| 475928 | ref | gcc -O -fomit-frame-pointer | 20140601 | 20140525 |
| 563842 | ref | gcc -mabi=32 -Os -fomit-frame-pointer | 20140601 | 20140525 |
| 569434 | ref | gcc -funroll-loops -mabi=32 -Os -fomit-frame-pointer | 20140601 | 20140525 |
| 569496 | ref | gcc -funroll-loops -Os -fomit-frame-pointer | 20140601 | 20140525 |
| 569544 | ref | gcc -Os -fomit-frame-pointer | 20140601 | 20140525 |
| 603330 | ref | gcc -mabi=32 -O3 -fomit-frame-pointer | 20140601 | 20140525 |
| 603526 | ref | gcc -O3 -fomit-frame-pointer | 20140601 | 20140525 |
| 607838 | ref | gcc -funroll-loops -mabi=32 -O2 -fomit-frame-pointer | 20140601 | 20140525 |
| 607954 | ref | gcc -funroll-loops -O2 -fomit-frame-pointer | 20140601 | 20140525 |
| 608602 | ref | gcc -funroll-loops -mabi=32 -O3 -fomit-frame-pointer | 20140601 | 20140525 |
| 608640 | ref | gcc -funroll-loops -O3 -fomit-frame-pointer | 20140601 | 20140525 |
| 610138 | ref | gcc -mabi=32 -O2 -fomit-frame-pointer | 20140601 | 20140525 |
| 610190 | ref | gcc -O2 -fomit-frame-pointer | 20140601 | 20140525 |
| 2071388 | ref | gcc | 20140601 | 20140525 |
| 2071748 | ref | gcc -funroll-loops | 20140601 | 20140525 |
| 2071752 | ref | cc | 20140601 | 20140525 |
| Compiler | Implementations
|
| cc | neon |
| gcc | neon |
| gcc -O2 -fomit-frame-pointer | neon |
| gcc -O3 -fomit-frame-pointer | neon |
| gcc -O -fomit-frame-pointer | neon |
| gcc -Os -fomit-frame-pointer | neon |
| gcc -fno-schedule-insns -O2 -fomit-frame-pointer | neon |
| gcc -fno-schedule-insns -O3 -fomit-frame-pointer | neon |
| gcc -fno-schedule-insns -O -fomit-frame-pointer | neon |
| gcc -fno-schedule-insns -Os -fomit-frame-pointer | neon |
| gcc -funroll-loops | neon |
| gcc -funroll-loops -O2 -fomit-frame-pointer | neon |
| gcc -funroll-loops -O3 -fomit-frame-pointer | neon |
| gcc -funroll-loops -O -fomit-frame-pointer | neon |
| gcc -funroll-loops -Os -fomit-frame-pointer | neon |
| gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | neon |
| gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | neon |
| gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | neon |
| gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | neon |
| gcc -funroll-loops -mabi=32 -O2 -fomit-frame-pointer | neon |
| gcc -funroll-loops -mabi=32 -O3 -fomit-frame-pointer | neon |
| gcc -funroll-loops -mabi=32 -O -fomit-frame-pointer | neon |
| gcc -funroll-loops -mabi=32 -Os -fomit-frame-pointer | neon |
| gcc -mabi=32 -O2 -fomit-frame-pointer | neon |
| gcc -mabi=32 -O3 -fomit-frame-pointer | neon |
| gcc -mabi=32 -O -fomit-frame-pointer | neon |
| gcc -mabi=32 -Os -fomit-frame-pointer | neon
|
| Compiler | Implementations
|
| cc | ymm |
| gcc | ymm |
| gcc -O2 -fomit-frame-pointer | ymm |
| gcc -O3 -fomit-frame-pointer | ymm |
| gcc -O -fomit-frame-pointer | ymm |
| gcc -Os -fomit-frame-pointer | ymm |
| gcc -fno-schedule-insns -O2 -fomit-frame-pointer | ymm |
| gcc -fno-schedule-insns -O3 -fomit-frame-pointer | ymm |
| gcc -fno-schedule-insns -O -fomit-frame-pointer | ymm |
| gcc -fno-schedule-insns -Os -fomit-frame-pointer | ymm |
| gcc -funroll-loops | ymm |
| gcc -funroll-loops -O2 -fomit-frame-pointer | ymm |
| gcc -funroll-loops -O3 -fomit-frame-pointer | ymm |
| gcc -funroll-loops -O -fomit-frame-pointer | ymm |
| gcc -funroll-loops -Os -fomit-frame-pointer | ymm |
| gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | ymm |
| gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | ymm |
| gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | ymm |
| gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | ymm |
| gcc -funroll-loops -mabi=32 -O2 -fomit-frame-pointer | ymm |
| gcc -funroll-loops -mabi=32 -O3 -fomit-frame-pointer | ymm |
| gcc -funroll-loops -mabi=32 -O -fomit-frame-pointer | ymm |
| gcc -funroll-loops -mabi=32 -Os -fomit-frame-pointer | ymm |
| gcc -mabi=32 -O2 -fomit-frame-pointer | ymm |
| gcc -mabi=32 -O3 -fomit-frame-pointer | ymm |
| gcc -mabi=32 -O -fomit-frame-pointer | ymm |
| gcc -mabi=32 -Os -fomit-frame-pointer | ymm
|
| Compiler | Implementations
|
| cc | xmm |
| gcc | xmm |
| gcc -O2 -fomit-frame-pointer | xmm |
| gcc -O3 -fomit-frame-pointer | xmm |
| gcc -O -fomit-frame-pointer | xmm |
| gcc -Os -fomit-frame-pointer | xmm |
| gcc -fno-schedule-insns -O2 -fomit-frame-pointer | xmm |
| gcc -fno-schedule-insns -O3 -fomit-frame-pointer | xmm |
| gcc -fno-schedule-insns -O -fomit-frame-pointer | xmm |
| gcc -fno-schedule-insns -Os -fomit-frame-pointer | xmm |
| gcc -funroll-loops | xmm |
| gcc -funroll-loops -O2 -fomit-frame-pointer | xmm |
| gcc -funroll-loops -O3 -fomit-frame-pointer | xmm |
| gcc -funroll-loops -O -fomit-frame-pointer | xmm |
| gcc -funroll-loops -Os -fomit-frame-pointer | xmm |
| gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | xmm |
| gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | xmm |
| gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | xmm |
| gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | xmm |
| gcc -funroll-loops -mabi=32 -O2 -fomit-frame-pointer | xmm |
| gcc -funroll-loops -mabi=32 -O3 -fomit-frame-pointer | xmm |
| gcc -funroll-loops -mabi=32 -O -fomit-frame-pointer | xmm |
| gcc -funroll-loops -mabi=32 -Os -fomit-frame-pointer | xmm |
| gcc -mabi=32 -O2 -fomit-frame-pointer | xmm |
| gcc -mabi=32 -O3 -fomit-frame-pointer | xmm |
| gcc -mabi=32 -O -fomit-frame-pointer | xmm |
| gcc -mabi=32 -Os -fomit-frame-pointer | xmm
|
| 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 -mabi=32 -O2 -fomit-frame-pointer | ref |
| gcc -funroll-loops -mabi=32 -O3 -fomit-frame-pointer | ref |
| gcc -funroll-loops -mabi=32 -O -fomit-frame-pointer | ref |
| gcc -funroll-loops -mabi=32 -Os -fomit-frame-pointer | ref |
| gcc -mabi=32 -O2 -fomit-frame-pointer | ref |
| gcc -mabi=32 -O3 -fomit-frame-pointer | ref |
| gcc -mabi=32 -O -fomit-frame-pointer | ref |
| gcc -mabi=32 -Os -fomit-frame-pointer | ref
|
| Compiler | Implementations
|
| clang -O3 -fomit-frame-pointer | xmm ymm |
| clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer | xmm ymm |
| clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive | xmm ymm |
| clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer | xmm ymm |
| clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive | xmm ymm |
| clang -O3 -fwrapv -march=armv7-a -mfloat-abi=softfp -mfpu=neon -fomit-frame-pointer | xmm ymm |
| clang -O3 -fwrapv -march=armv7-a -mfloat-abi=softfp -mfpu=neon -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive | xmm ymm |
| clang -O3 -fwrapv -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -fomit-frame-pointer | xmm ymm |
| clang -O3 -fwrapv -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive | xmm ymm |
| clang -O3 -fwrapv -march=native -fomit-frame-pointer | xmm ymm |
| clang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | xmm ymm |
| clang -O3 -fwrapv -mavx2 -fomit-frame-pointer | xmm ymm |
| clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | xmm ymm |
| clang -O3 -fwrapv -mavx -fomit-frame-pointer | xmm ymm |
| clang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | xmm ymm
|
| Compiler | Implementations
|
| clang -O3 -fomit-frame-pointer | neon |
| clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer | neon |
| clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive | neon |
| clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer | neon |
| clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive | neon |
| clang -O3 -fwrapv -march=armv7-a -mfloat-abi=softfp -mfpu=neon -fomit-frame-pointer | neon |
| clang -O3 -fwrapv -march=armv7-a -mfloat-abi=softfp -mfpu=neon -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive | neon |
| clang -O3 -fwrapv -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -fomit-frame-pointer | neon |
| clang -O3 -fwrapv -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive | neon |
| clang -O3 -fwrapv -march=native -fomit-frame-pointer | neon |
| clang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | neon |
| clang -O3 -fwrapv -mavx2 -fomit-frame-pointer | neon |
| clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | neon |
| clang -O3 -fwrapv -mavx -fomit-frame-pointer | neon |
| clang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer | neon
|