Implementation notes: amd64, bolero, crypto_dh/surf127eps

Computer: bolero
Architecture: amd64
CPU ID: GenuineIntel-000406f1-bfebfbff
SUPERCOP version: 20171218
Operation: crypto_dh
Primitive: surf127eps
TimeImplementationCompilerBenchmark dateSUPERCOP version
787980mpfqgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017110620171020
789192mpfqgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2017110620171020
791580mpfqgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2017110620171020
791712mpfqgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017110620171020
791712mpfqgcc -march=barcelona -O2 -fomit-frame-pointer2017110620171020
791868mpfqgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017110620171020
791924mpfqgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017110620171020
792036mpfqgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017110620171020
792224mpfqgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017110620171020
792800mpfqgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017110620171020
793300mpfqgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017110620171020
794136mpfqgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2017110620171020
794352mpfqgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017110620171020
794672mpfqgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017110620171020
795172mpfqgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2017110620171020
795496mpfqgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017110620171020
795556mpfqgcc -march=k8 -O2 -fomit-frame-pointer2017110620171020
795756mpfqgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017110620171020
795988mpfqgcc -funroll-loops -O2 -fomit-frame-pointer2017110620171020
796068mpfqgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2017110620171020
796132mpfqgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017110620171020
796396mpfqgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017110620171020
796580mpfqgcc -march=nocona -O2 -fomit-frame-pointer2017110620171020
797040mpfqgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017110620171020
797284mpfqgcc -m64 -O3 -fomit-frame-pointer2017110620171020
797804mpfqgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017110620171020
797972mpfqgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017110620171020
798088mpfqclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017110620171020
798152mpfqclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017110620171020
798156mpfqgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017110620171020
798236mpfqgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017110620171020
798248mpfqgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017110620171020
798264mpfqgcc -m64 -march=core2 -O3 -fomit-frame-pointer2017110620171020
798352mpfqclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2017110620171020
798436mpfqgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017110620171020
798444mpfqgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017110620171020
798684mpfqgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017110620171020
798868mpfqgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017110620171020
798984mpfqgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017110620171020
799004mpfqclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2017110620171020
799152mpfqgcc -m64 -O2 -fomit-frame-pointer2017110620171020
799580mpfqgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017110620171020
799676mpfqgcc -O3 -fomit-frame-pointer2017110620171020
799712mpfqgcc -march=barcelona -O3 -fomit-frame-pointer2017110620171020
799864mpfqclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2017110620171020
800252mpfqclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2017110620171020
800288mpfqclang -O3 -fomit-frame-pointer -Qunused-arguments2017110620171020
800428mpfqgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017110620171020
800500mpfqgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2017110620171020
801068mpfqclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017110620171020
801152mpfqclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017110620171020
801268mpfqgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017110620171020
801616mpfqgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017110620171020
801768mpfqgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017110620171020
801812mpfqgcc -march=nocona -O3 -fomit-frame-pointer2017110620171020
802336mpfqgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017110620171020
802428mpfqgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017110620171020
802460mpfqgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017110620171020
802632mpfqgcc -march=k8 -O3 -fomit-frame-pointer2017110620171020
802980mpfqgcc -funroll-loops -O3 -fomit-frame-pointer2017110620171020
803176mpfqgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017110620171020
803320mpfqgcc -O2 -fomit-frame-pointer2017110620171020
805556mpfqclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017110620171020
805568mpfqgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017110620171020
828592mpfqgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017110620171020
830176mpfqgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017110620171020
831724mpfqgcc -m64 -O -fomit-frame-pointer2017110620171020
832464mpfqgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017110620171020
832496mpfqgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017110620171020
832828mpfqgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017110620171020
833448mpfqgcc -funroll-loops -m64 -O -fomit-frame-pointer2017110620171020
833848mpfqgcc -m64 -march=core2 -O -fomit-frame-pointer2017110620171020
834132mpfqgcc -funroll-loops -O -fomit-frame-pointer2017110620171020
835220mpfqgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2017110620171020
835572mpfqgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017110620171020
835716mpfqgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017110620171020
836664mpfqgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017110620171020
837288mpfqgcc -m64 -march=nocona -O -fomit-frame-pointer2017110620171020
837292mpfqgcc -O -fomit-frame-pointer2017110620171020
837316mpfqgcc -march=k8 -O -fomit-frame-pointer2017110620171020
837776mpfqgcc -m64 -march=corei7 -O -fomit-frame-pointer2017110620171020
838620mpfqgcc -march=nocona -O -fomit-frame-pointer2017110620171020
838896mpfqgcc -fno-schedule-insns -O -fomit-frame-pointer2017110620171020
838904mpfqgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017110620171020
839028mpfqgcc -m64 -march=k8 -O -fomit-frame-pointer2017110620171020
839228mpfqgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2017110620171020
839716mpfqgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017110620171020
839916mpfqgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2017110620171020
840272mpfqgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017110620171020
841096mpfqgcc -march=barcelona -O -fomit-frame-pointer2017110620171020
842104mpfqgcc -m64 -march=barcelona -O -fomit-frame-pointer2017110620171020
980292mpfqgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2017110620171020
980328mpfqgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017110620171020
981256mpfqgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017110620171020
983516mpfqgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017110620171020
983644mpfqgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017110620171020
985188mpfqgcc -march=k8 -Os -fomit-frame-pointer2017110620171020
985284mpfqgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017110620171020
985428mpfqgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017110620171020
985576mpfqgcc -funroll-loops -m64 -Os -fomit-frame-pointer2017110620171020
985692mpfqgcc -march=barcelona -Os -fomit-frame-pointer2017110620171020
985748mpfqgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017110620171020
986024mpfqgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2017110620171020
986032mpfqgcc -funroll-loops -Os -fomit-frame-pointer2017110620171020
986040mpfqgcc -Os -fomit-frame-pointer2017110620171020
986128mpfqgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017110620171020
986272mpfqgcc -fno-schedule-insns -Os -fomit-frame-pointer2017110620171020
986284mpfqgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2017110620171020
986292mpfqgcc -m64 -march=k8 -Os -fomit-frame-pointer2017110620171020
986328mpfqgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017110620171020
986368mpfqgcc -m64 -Os -fomit-frame-pointer2017110620171020
987328mpfqgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017110620171020
987356mpfqgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017110620171020
987620mpfqgcc -m64 -march=core2 -Os -fomit-frame-pointer2017110620171020
987780mpfqgcc -march=nocona -Os -fomit-frame-pointer2017110620171020
987864mpfqgcc -m64 -march=corei7 -Os -fomit-frame-pointer2017110620171020
988044mpfqgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017110620171020
988596mpfqgcc -m64 -march=nocona -Os -fomit-frame-pointer2017110620171020

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