Implementation notes: amd64, hydra3, crypto_dh/surf127eps

Computer: hydra3
Architecture: amd64
CPU ID: AuthenticAMD-00100fa0-178bfbff
SUPERCOP version: 20171218
Operation: crypto_dh
Primitive: surf127eps
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1035014? ? ?? ? ?mpfqclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017111720171020
1035390? ? ?? ? ?mpfqclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017111720171020
1035459? ? ?? ? ?mpfqclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017111720171020
1035968? ? ?? ? ?mpfqclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017111720171020
1036122? ? ?? ? ?mpfqgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017111720171020
1036501? ? ?? ? ?mpfqgcc_-march=nocona_-O3_-fomit-frame-pointer2017111720171020
1037428? ? ?? ? ?mpfqclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017111720171020
1037568? ? ?? ? ?mpfqclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017111720171020
1048387? ? ?? ? ?mpfqgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017111720171020
1048504? ? ?? ? ?mpfqgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017111720171020
1048793? ? ?? ? ?mpfqgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017111720171020
1049092? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017111720171020
1049095? ? ?? ? ?mpfqgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017111720171020
1049645? ? ?? ? ?mpfqgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017111720171020
1049945? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017111720171020
1050008? ? ?? ? ?mpfqgcc_-march=nocona_-O2_-fomit-frame-pointer2017111720171020
1050050? ? ?? ? ?mpfqgcc_-funroll-loops_-O2_-fomit-frame-pointer2017111720171020
1050065? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017111720171020
1050787? ? ?? ? ?mpfqgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017111720171020
1051035? ? ?? ? ?mpfqgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017111720171020
1051476? ? ?? ? ?mpfqgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017111720171020
1054063? ? ?? ? ?mpfqgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017111720171020
1054454? ? ?? ? ?mpfqgcc_-O2_-fomit-frame-pointer2017111720171020
1054533? ? ?? ? ?mpfqgcc_-m64_-O2_-fomit-frame-pointer2017111720171020
1055015? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017111720171020
1055401? ? ?? ? ?mpfqgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017111720171020
1060584? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017111720171020
1060584? ? ?? ? ?mpfqgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017111720171020
1060709? ? ?? ? ?mpfqgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017111720171020
1061044? ? ?? ? ?mpfqgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017111720171020
1061184? ? ?? ? ?mpfqgcc_-funroll-loops_-O3_-fomit-frame-pointer2017111720171020
1061528? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017111720171020
1061609? ? ?? ? ?mpfqgcc_-march=k8_-O3_-fomit-frame-pointer2017111720171020
1061700? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017111720171020
1061747? ? ?? ? ?mpfqgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017111720171020
1061922? ? ?? ? ?mpfqgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017111720171020
1062416? ? ?? ? ?mpfqgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017111720171020
1062420? ? ?? ? ?mpfqgcc_-march=barcelona_-O3_-fomit-frame-pointer2017111720171020
1062967? ? ?? ? ?mpfqgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017111720171020
1063153? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017111720171020
1063328? ? ?? ? ?mpfqgcc_-march=barcelona_-O2_-fomit-frame-pointer2017111720171020
1064595? ? ?? ? ?mpfqgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017111720171020
1065251? ? ?? ? ?mpfqgcc_-march=k8_-O2_-fomit-frame-pointer2017111720171020
1065415? ? ?? ? ?mpfqgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017111720171020
1066040? ? ?? ? ?mpfqgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017111720171020
1069547? ? ?? ? ?mpfqgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017111720171020
1069615? ? ?? ? ?mpfqgcc_-m64_-O3_-fomit-frame-pointer2017111720171020
1069977? ? ?? ? ?mpfqgcc_-O3_-fomit-frame-pointer2017111720171020
1079465? ? ?? ? ?mpfqgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017111720171020
1083251? ? ?? ? ?mpfqgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017111720171020
1085985? ? ?? ? ?mpfqgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017111720171020
1089134? ? ?? ? ?mpfqgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017111720171020
1089335? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017111720171020
1089560? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017111720171020
1089678? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017111720171020
1089902? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017111720171020
1090299? ? ?? ? ?mpfqgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017111720171020
1090981? ? ?? ? ?mpfqgcc_-funroll-loops_-O_-fomit-frame-pointer2017111720171020
1093376? ? ?? ? ?mpfqgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017111720171020
1101466? ? ?? ? ?mpfqgcc_-march=nocona_-O_-fomit-frame-pointer2017111720171020
1101587? ? ?? ? ?mpfqgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017111720171020
1101670? ? ?? ? ?mpfqgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017111720171020
1101980? ? ?? ? ?mpfqgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017111720171020
1102795? ? ?? ? ?mpfqgcc_-march=barcelona_-O_-fomit-frame-pointer2017111720171020
1103093? ? ?? ? ?mpfqgcc_-m64_-O_-fomit-frame-pointer2017111720171020
1103710? ? ?? ? ?mpfqgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017111720171020
1104884? ? ?? ? ?mpfqgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017111720171020
1105568? ? ?? ? ?mpfqgcc_-march=k8_-O_-fomit-frame-pointer2017111720171020
1107088? ? ?? ? ?mpfqgcc_-O_-fomit-frame-pointer2017111720171020
1107351? ? ?? ? ?mpfqgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017111720171020
1109323? ? ?? ? ?mpfqgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017111720171020
1109426? ? ?? ? ?mpfqgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017111720171020
1113015? ? ?? ? ?mpfqgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017111720171020
1113491? ? ?? ? ?mpfqgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017111720171020
1268953? ? ?? ? ?mpfqgcc_-march=nocona_-Os_-fomit-frame-pointer2017111720171020
1270348? ? ?? ? ?mpfqgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017111720171020
1270648? ? ?? ? ?mpfqgcc_-m64_-Os_-fomit-frame-pointer2017111720171020
1271733? ? ?? ? ?mpfqgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017111720171020
1271812? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017111720171020
1272105? ? ?? ? ?mpfqgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017111720171020
1272261? ? ?? ? ?mpfqgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017111720171020
1272262? ? ?? ? ?mpfqgcc_-march=barcelona_-Os_-fomit-frame-pointer2017111720171020
1272698? ? ?? ? ?mpfqgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017111720171020
1272717? ? ?? ? ?mpfqgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017111720171020
1272912? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017111720171020
1273328? ? ?? ? ?mpfqgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017111720171020
1273651? ? ?? ? ?mpfqgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017111720171020
1273667? ? ?? ? ?mpfqgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017111720171020
1274392? ? ?? ? ?mpfqgcc_-Os_-fomit-frame-pointer2017111720171020
1274912? ? ?? ? ?mpfqgcc_-march=k8_-Os_-fomit-frame-pointer2017111720171020
1275666? ? ?? ? ?mpfqgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017111720171020
1276463? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017111720171020
1276706? ? ?? ? ?mpfqgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017111720171020
1277191? ? ?? ? ?mpfqgcc_-funroll-loops_-Os_-fomit-frame-pointer2017111720171020
1277512? ? ?? ? ?mpfqgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017111720171020
1277783? ? ?? ? ?mpfqgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017111720171020
1281316? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017111720171020
1283977? ? ?? ? ?mpfqgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017111720171020

Test failure

Implementation: crypto_dh/surf127eps/mpfq
Compiler: gcc -m64 -march=core2 -O3 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m64 -march=core2 -O3 -fomit-frame-pointer mpfq

Compiler output

Implementation: crypto_dh/surf127eps/mpfq
Compiler: cc
surf127eps.c: In file included from mpfq_p_127_735.h:5:0,
surf127eps.c: from surf127eps.c:18:
surf127eps.c: x86_64/mpfq_p_127_735.h: In function 'mpfq_p_127_735_hadamard':
surf127eps.c: x86_64/mpfq_p_127_735.h:360:3: error: 'asm' operand has impossible constraints
surf127eps.c: __asm__ volatile (
surf127eps.c: ^

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
cc mpfq
gcc mpfq
gcc -funroll-loops mpfq

Compiler output

Implementation: crypto_dh/surf127eps/mpfq
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
mpfq_p_127_735.c: In file included from mpfq_p_127_735.c:5:
mpfq_p_127_735.c: ./x86_64/mpfq_p_127_735.c:111:1: warning: control reaches end of non-void function [-Wreturn-type]
mpfq_p_127_735.c: }
mpfq_p_127_735.c: ^
mpfq_p_127_735.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments mpfq
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments mpfq
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments mpfq
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments mpfq
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments mpfq
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments mpfq