Implementation notes: amd64, hydra6, crypto_dh/surf127eps

Computer: hydra6
Architecture: amd64
CPU ID: AuthenticAMD-00600f12-178bfbff
SUPERCOP version: 20171218
Operation: crypto_dh
Primitive: surf127eps
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1596947? ? ?? ? ?mpfqgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017111320171020
1597109? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017111320171020
1597883? ? ?? ? ?mpfqgcc_-funroll-loops_-O2_-fomit-frame-pointer2017111320171020
1598230? ? ?? ? ?mpfqgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017111320171020
1598722? ? ?? ? ?mpfqgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017111320171020
1598796? ? ?? ? ?mpfqgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017111320171020
1600422? ? ?? ? ?mpfqgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017111320171020
1600574? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017111320171020
1600642? ? ?? ? ?mpfqgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017111320171020
1600798? ? ?? ? ?mpfqgcc_-m64_-O2_-fomit-frame-pointer2017111320171020
1601438? ? ?? ? ?mpfqgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017111320171020
1601515? ? ?? ? ?mpfqgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017111320171020
1601708? ? ?? ? ?mpfqgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017111320171020
1601873? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017111320171020
1602278? ? ?? ? ?mpfqgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017111320171020
1602953? ? ?? ? ?mpfqgcc_-O2_-fomit-frame-pointer2017111320171020
1603045? ? ?? ? ?mpfqgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017111320171020
1603051? ? ?? ? ?mpfqgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017111320171020
1603822? ? ?? ? ?mpfqgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017111320171020
1605065? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017111320171020
1605671? ? ?? ? ?mpfqgcc_-funroll-loops_-O3_-fomit-frame-pointer2017111320171020
1605736? ? ?? ? ?mpfqgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017111320171020
1605838? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017111320171020
1608228? ? ?? ? ?mpfqclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017111320171020
1608930? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017111320171020
1609264? ? ?? ? ?mpfqgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017111320171020
1609680? ? ?? ? ?mpfqgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017111320171020
1612218? ? ?? ? ?mpfqgcc_-march=nocona_-O3_-fomit-frame-pointer2017111320171020
1613346? ? ?? ? ?mpfqclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017111320171020
1614954? ? ?? ? ?mpfqclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017111320171020
1615051? ? ?? ? ?mpfqclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017111320171020
1615071? ? ?? ? ?mpfqclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017111320171020
1615397? ? ?? ? ?mpfqclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017111320171020
1615444? ? ?? ? ?mpfqclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017111320171020
1615528? ? ?? ? ?mpfqclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017111320171020
1616260? ? ?? ? ?mpfqgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017111320171020
1616497? ? ?? ? ?mpfqgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017111320171020
1617679? ? ?? ? ?mpfqgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017111320171020
1617707? ? ?? ? ?mpfqgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017111320171020
1617839? ? ?? ? ?mpfqgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017111320171020
1617876? ? ?? ? ?mpfqgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017111320171020
1618366? ? ?? ? ?mpfqgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017111320171020
1619756? ? ?? ? ?mpfqgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017111320171020
1620148? ? ?? ? ?mpfqgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017111320171020
1620205? ? ?? ? ?mpfqgcc_-march=nocona_-O2_-fomit-frame-pointer2017111320171020
1620490? ? ?? ? ?mpfqgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017111320171020
1620591? ? ?? ? ?mpfqgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017111320171020
1621414? ? ?? ? ?mpfqgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017111320171020
1621690? ? ?? ? ?mpfqgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017111320171020
1621717? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017111320171020
1621783? ? ?? ? ?mpfqgcc_-march=barcelona_-O3_-fomit-frame-pointer2017111320171020
1621848? ? ?? ? ?mpfqgcc_-m64_-O3_-fomit-frame-pointer2017111320171020
1621939? ? ?? ? ?mpfqgcc_-march=barcelona_-O2_-fomit-frame-pointer2017111320171020
1622229? ? ?? ? ?mpfqgcc_-march=k8_-O3_-fomit-frame-pointer2017111320171020
1622433? ? ?? ? ?mpfqgcc_-march=k8_-O2_-fomit-frame-pointer2017111320171020
1622908? ? ?? ? ?mpfqgcc_-O3_-fomit-frame-pointer2017111320171020
1625058? ? ?? ? ?mpfqgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017111320171020
1635729? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017111320171020
1635786? ? ?? ? ?mpfqgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017111320171020
1636939? ? ?? ? ?mpfqgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017111320171020
1664078? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017111320171020
1678605? ? ?? ? ?mpfqgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017111320171020
1686323? ? ?? ? ?mpfqgcc_-march=k8_-O_-fomit-frame-pointer2017111320171020
1686398? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017111320171020
1690540? ? ?? ? ?mpfqgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017111320171020
1693647? ? ?? ? ?mpfqgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017111320171020
1694789? ? ?? ? ?mpfqgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017111320171020
1694980? ? ?? ? ?mpfqgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017111320171020
1698232? ? ?? ? ?mpfqgcc_-march=barcelona_-O_-fomit-frame-pointer2017111320171020
1698358? ? ?? ? ?mpfqgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017111320171020
1698426? ? ?? ? ?mpfqgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017111320171020
1698496? ? ?? ? ?mpfqgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017111320171020
1699468? ? ?? ? ?mpfqgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017111320171020
1700168? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017111320171020
1700402? ? ?? ? ?mpfqgcc_-m64_-O_-fomit-frame-pointer2017111320171020
1701474? ? ?? ? ?mpfqgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017111320171020
1701875? ? ?? ? ?mpfqgcc_-march=nocona_-O_-fomit-frame-pointer2017111320171020
1702362? ? ?? ? ?mpfqgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017111320171020
1703002? ? ?? ? ?mpfqgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017111320171020
1704296? ? ?? ? ?mpfqgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017111320171020
1704324? ? ?? ? ?mpfqgcc_-O_-fomit-frame-pointer2017111320171020
1706428? ? ?? ? ?mpfqgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017111320171020
1706792? ? ?? ? ?mpfqgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017111320171020
1709629? ? ?? ? ?mpfqgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017111320171020
1710596? ? ?? ? ?mpfqgcc_-funroll-loops_-O_-fomit-frame-pointer2017111320171020
1714170? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017111320171020
1919874? ? ?? ? ?mpfqgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017111320171020
1921327? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017111320171020
1924495? ? ?? ? ?mpfqgcc_-Os_-fomit-frame-pointer2017111320171020
1924723? ? ?? ? ?mpfqgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017111320171020
1924793? ? ?? ? ?mpfqgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017111320171020
1925291? ? ?? ? ?mpfqgcc_-march=nocona_-Os_-fomit-frame-pointer2017111320171020
1926408? ? ?? ? ?mpfqgcc_-funroll-loops_-Os_-fomit-frame-pointer2017111320171020
1926693? ? ?? ? ?mpfqgcc_-m64_-Os_-fomit-frame-pointer2017111320171020
1927445? ? ?? ? ?mpfqgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017111320171020
1928775? ? ?? ? ?mpfqgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017111320171020
1928823? ? ?? ? ?mpfqgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017111320171020
1929090? ? ?? ? ?mpfqgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017111320171020
1929366? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017111320171020
1930996? ? ?? ? ?mpfqgcc_-march=k8_-Os_-fomit-frame-pointer2017111320171020
1931011? ? ?? ? ?mpfqgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017111320171020
1931070? ? ?? ? ?mpfqgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017111320171020
1933432? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017111320171020
1934261? ? ?? ? ?mpfqgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017111320171020
1934412? ? ?? ? ?mpfqgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017111320171020
1934814? ? ?? ? ?mpfqgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017111320171020
1934914? ? ?? ? ?mpfqgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017111320171020
1935654? ? ?? ? ?mpfqgcc_-march=barcelona_-Os_-fomit-frame-pointer2017111320171020
1935660? ? ?? ? ?mpfqgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017111320171020
1935694? ? ?? ? ?mpfqgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017111320171020
1940248? ? ?? ? ?mpfqgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017111320171020
1945226? ? ?? ? ?mpfqgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017111320171020

Test failure

Implementation: crypto_dh/surf127eps/mpfq
Compiler: gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer mpfq
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer mpfq
gcc -m64 -march=core-avx2 -Os -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: 8, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments mpfq
clang -O3 -fwrapv -march=native -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