Implementation notes: amd64, rumba7, crypto_dh/surf127eps

Computer: rumba7
Architecture: amd64
CPU ID: AuthenticAMD-00800f11-178bfbff
SUPERCOP version: 20171218
Operation: crypto_dh
Primitive: surf127eps
TimeImplementationCompilerBenchmark dateSUPERCOP version
793560mpfqgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2018053020171218
793560mpfqgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2018053020171218
793590mpfqclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2018053020171218
794010mpfqgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2018053020171218
794040mpfqgcc -funroll-loops -O2 -fomit-frame-pointer2018053020171218
794280mpfqgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2018053020171218
794550mpfqgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2018053020171218
794580mpfqclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018053020171218
794670mpfqclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018053020171218
794730mpfqclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018053020171218
794760mpfqclang -O3 -fomit-frame-pointer -Qunused-arguments2018053020171218
794760mpfqgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2018053020171218
795240mpfqgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2018053020171218
795270mpfqgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2018053020171218
795780mpfqgcc -funroll-loops -O3 -fomit-frame-pointer2018053020171218
795840mpfqgcc -m64 -march=nocona -O2 -fomit-frame-pointer2018053020171218
795900mpfqgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2018053020171218
795960mpfqgcc -m64 -O2 -fomit-frame-pointer2018053020171218
796290mpfqgcc -fno-schedule-insns -O2 -fomit-frame-pointer2018053020171218
796410mpfqgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2018053020171218
796410mpfqgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2018053020171218
796680mpfqclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018053020171218
796860mpfqclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2018053020171218
797010mpfqgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2018053020171218
797010mpfqgcc -march=k8 -O3 -fomit-frame-pointer2018053020171218
797580mpfqgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2018053020171218
798120mpfqgcc -march=nocona -O2 -fomit-frame-pointer2018053020171218
798270mpfqgcc -march=barcelona -O3 -fomit-frame-pointer2018053020171218
798420mpfqgcc -m64 -O3 -fomit-frame-pointer2018053020171218
798480mpfqgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2018053020171218
798510mpfqgcc -O2 -fomit-frame-pointer2018053020171218
798750mpfqgcc -fno-schedule-insns -O3 -fomit-frame-pointer2018053020171218
798750mpfqgcc -m64 -march=k8 -O3 -fomit-frame-pointer2018053020171218
798780mpfqgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2018053020171218
798900mpfqgcc -m64 -march=k8 -O2 -fomit-frame-pointer2018053020171218
799080mpfqgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2018053020171218
799170mpfqgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2018053020171218
799260mpfqclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018053020171218
799410mpfqgcc -march=barcelona -O2 -fomit-frame-pointer2018053020171218
799560mpfqgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2018053020171218
799710mpfqgcc -O3 -fomit-frame-pointer2018053020171218
800010mpfqgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2018053020171218
800100mpfqgcc -march=k8 -O2 -fomit-frame-pointer2018053020171218
800610mpfqgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2018053020171218
800880mpfqgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2018053020171218
800940mpfqclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2018053020171218
801090mpfqgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2018053020171218
801120mpfqgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2018053020171218
801210mpfqgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2018053020171218
801390mpfqclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018053020171218
801450mpfqgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2018053020171218
801570mpfqgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2018053020171218
801900mpfqgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2018053020171218
802140mpfqgcc -m64 -march=core2 -O2 -fomit-frame-pointer2018053020171218
802470mpfqgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2018053020171218
802800mpfqgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2018053020171218
803100mpfqgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2018053020171218
803490mpfqgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2018053020171218
803970mpfqgcc -m64 -march=core2 -O3 -fomit-frame-pointer2018053020171218
805530mpfqgcc -march=nocona -O3 -fomit-frame-pointer2018053020171218
805890mpfqgcc -m64 -march=nocona -O3 -fomit-frame-pointer2018053020171218
805950mpfqgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2018053020171218
808590mpfqgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2018053020171218
809490mpfqgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2018053020171218
844290mpfqgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2018053020171218
845340mpfqgcc -funroll-loops -O -fomit-frame-pointer2018053020171218
845670mpfqgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2018053020171218
846030mpfqgcc -march=barcelona -O -fomit-frame-pointer2018053020171218
846450mpfqgcc -m64 -march=barcelona -O -fomit-frame-pointer2018053020171218
846630mpfqgcc -funroll-loops -m64 -O -fomit-frame-pointer2018053020171218
847890mpfqgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2018053020171218
848460mpfqgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2018053020171218
848550mpfqgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2018053020171218
848700mpfqgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2018053020171218
848970mpfqgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2018053020171218
849720mpfqgcc -O -fomit-frame-pointer2018053020171218
850140mpfqgcc -m64 -O -fomit-frame-pointer2018053020171218
850170mpfqgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2018053020171218
850740mpfqgcc -fno-schedule-insns -O -fomit-frame-pointer2018053020171218
851070mpfqgcc -m64 -march=k8 -O -fomit-frame-pointer2018053020171218
852240mpfqgcc -m64 -march=core2 -O -fomit-frame-pointer2018053020171218
852270mpfqgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2018053020171218
852660mpfqgcc -march=k8 -O -fomit-frame-pointer2018053020171218
853290mpfqgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2018053020171218
853470mpfqgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2018053020171218
853680mpfqgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2018053020171218
854100mpfqgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2018053020171218
854190mpfqgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2018053020171218
854580mpfqgcc -m64 -march=corei7 -O -fomit-frame-pointer2018053020171218
854580mpfqgcc -m64 -march=nocona -O -fomit-frame-pointer2018053020171218
855780mpfqgcc -march=nocona -O -fomit-frame-pointer2018053020171218
973710mpfqgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2018053020171218
974760mpfqgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2018053020171218
974850mpfqgcc -funroll-loops -m64 -Os -fomit-frame-pointer2018053020171218
974940mpfqgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2018053020171218
975300mpfqgcc -funroll-loops -Os -fomit-frame-pointer2018053020171218
975480mpfqgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2018053020171218
975750mpfqgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2018053020171218
976110mpfqgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2018053020171218
976230mpfqgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2018053020171218
976290mpfqgcc -march=k8 -Os -fomit-frame-pointer2018053020171218
976320mpfqgcc -Os -fomit-frame-pointer2018053020171218
976320mpfqgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2018053020171218
976590mpfqgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2018053020171218
977550mpfqgcc -fno-schedule-insns -Os -fomit-frame-pointer2018053020171218
977790mpfqgcc -march=nocona -Os -fomit-frame-pointer2018053020171218
977850mpfqgcc -march=barcelona -Os -fomit-frame-pointer2018053020171218
979140mpfqgcc -m64 -march=k8 -Os -fomit-frame-pointer2018053020171218
979320mpfqgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2018053020171218
979530mpfqgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2018053020171218
979800mpfqgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2018053020171218
980070mpfqgcc -m64 -Os -fomit-frame-pointer2018053020171218
980100mpfqgcc -m64 -march=core2 -Os -fomit-frame-pointer2018053020171218
980160mpfqgcc -m64 -march=nocona -Os -fomit-frame-pointer2018053020171218
980580mpfqgcc -m64 -march=corei7 -Os -fomit-frame-pointer2018053020171218
980970mpfqgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2018053020171218
986100mpfqgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2018053020171218
1161960mpfqgcc -m64 -march=barcelona -Os -fomit-frame-pointer2018053020171218

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: 10, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments mpfq
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments mpfq
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments mpfq
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments mpfq
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments mpfq
clang -O3 -fwrapv -mavx -maes -mpclmul -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