| Time | Implementation | Compiler | Benchmark date | SUPERCOP version |
| 280268 | ref | gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | 20140601 | 20140525 |
| 281338 | ref | gcc -fno-schedule-insns -Os -fomit-frame-pointer | 20140601 | 20140525 |
| 290544 | ref | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | 20140601 | 20140525 |
| 290656 | ref | gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | 20140601 | 20140525 |
| 297752 | ref | gcc -fno-schedule-insns -O3 -fomit-frame-pointer | 20140601 | 20140525 |
| 301860 | ref | gcc -fno-schedule-insns -O2 -fomit-frame-pointer | 20140601 | 20140525 |
| 326182 | ref | gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | 20140601 | 20140525 |
| 326196 | ref | gcc -funroll-loops -mabi=32 -O -fomit-frame-pointer | 20140601 | 20140525 |
| 326236 | ref | gcc -funroll-loops -O -fomit-frame-pointer | 20140601 | 20140525 |
| 332228 | ref | gcc -O -fomit-frame-pointer | 20140601 | 20140525 |
| 332230 | ref | gcc -mabi=32 -O -fomit-frame-pointer | 20140601 | 20140525 |
| 332250 | ref | gcc -fno-schedule-insns -O -fomit-frame-pointer | 20140601 | 20140525 |
| 394282 | ref | gcc -mabi=32 -Os -fomit-frame-pointer | 20140601 | 20140525 |
| 398090 | ref | gcc -Os -fomit-frame-pointer | 20140601 | 20140525 |
| 398306 | ref | gcc -funroll-loops -mabi=32 -Os -fomit-frame-pointer | 20140601 | 20140525 |
| 398440 | ref | gcc -funroll-loops -Os -fomit-frame-pointer | 20140601 | 20140525 |
| 412314 | ref | gcc -mabi=32 -O3 -fomit-frame-pointer | 20140601 | 20140525 |
| 412316 | ref | gcc -O3 -fomit-frame-pointer | 20140601 | 20140525 |
| 415294 | ref | gcc -funroll-loops -O2 -fomit-frame-pointer | 20140601 | 20140525 |
| 415322 | ref | gcc -funroll-loops -mabi=32 -O2 -fomit-frame-pointer | 20140601 | 20140525 |
| 415842 | ref | gcc -funroll-loops -O3 -fomit-frame-pointer | 20140601 | 20140525 |
| 415882 | ref | gcc -funroll-loops -mabi=32 -O3 -fomit-frame-pointer | 20140601 | 20140525 |
| 416468 | ref | gcc -mabi=32 -O2 -fomit-frame-pointer | 20140601 | 20140525 |
| 416638 | ref | gcc -O2 -fomit-frame-pointer | 20140601 | 20140525 |
| 1461592 | ref | gcc | 20140601 | 20140525 |
| 1461634 | ref | gcc -funroll-loops | 20140601 | 20140525 |
| 1461638 | 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
|