Implementation notes: amd64, hydra3, crypto_kem/edonk128ref

Computer: hydra3
Architecture: amd64
CPU ID: AuthenticAMD-00100fa0-178bfbff
SUPERCOP version: 20171218
Operation: crypto_kem
Primitive: edonk128ref
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
40354624? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017122520171218
40450612? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017122520171218
40475420? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017122520171218
40475561? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017122520171218
40506291? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017122520171218
40570535? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017122520171218
40575468? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017122520171218
40611915? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017122520171218
40621773? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017122520171218
40627015? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017122520171218
40638837? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017122520171218
40643392? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017122520171218
40664263? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017122520171218
40678853? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017122520171218
40684893? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017122520171218
40691528? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017122520171218
40692672? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017122520171218
40692935? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017122520171218
40711506? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017122520171218
40713557? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017122520171218
40716793? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017122520171218
40720224? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017122520171218
40732717? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017122520171218
40746386? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017122520171218
40751586? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017122520171218
40762808? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017122520171218
40762843? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017122520171218
40770056? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017122520171218
40786829? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017122520171218
40788710? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017122520171218
40800374? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017122520171218
40809877? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017122520171218
40811111? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017122520171218
40815756? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017122520171218
40826760? ? ?? ? ?refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017122520171218
40830181? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017122520171218
40847220? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017122520171218
40848821? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017122520171218
40851052? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017122520171218
40853949? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017122520171218
40854041? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017122520171218
40855527? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017122520171218
40862569? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017122520171218
40864446? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017122520171218
40869086? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017122520171218
40880049? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017122520171218
40891505? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017122520171218
40906202? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017122520171218
40912457? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017122520171218
40919635? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017122520171218
40925885? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017122520171218
40933713? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017122520171218
40955100? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017122520171218
40960113? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017122520171218
40960577? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017122520171218
40976466? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017122520171218
40989274? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2017122520171218
40991201? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017122520171218
41048747? ? ?? ? ?refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017122520171218
41051695? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017122520171218
41051875? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017122520171218
41072422? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017122520171218
41078730? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017122520171218
41085741? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017122520171218
41089137? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017122520171218
41116580? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017122520171218
41136772? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017122520171218
41155900? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2017122520171218
41206145? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017122520171218
41208307? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017122520171218
41225212? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017122520171218
41234160? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017122520171218
41257384? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017122520171218
41271164? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2017122520171218
41272970? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017122520171218
41298635? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017122520171218
41307892? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017122520171218
41310771? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017122520171218
41316869? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017122520171218
41366834? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2017122520171218
41371858? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017122520171218
41378637? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017122520171218
41407254? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017122520171218
41421538? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017122520171218
41529443? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017122520171218
41569018? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017122520171218
41593616? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017122520171218
41602529? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017122520171218
41714885? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017122520171218
43245788? ? ?? ? ?refcc2017122520171218
43256621? ? ?? ? ?refgcc_-funroll-loops2017122520171218
43268833? ? ?? ? ?refgcc2017122520171218

Test failure

Implementation: crypto_kem/edonk128ref/ref
Compiler: gcc -m64 -march=core2 -O3 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O -fomit-frame-pointer ref
gcc -m64 -march=corei7 -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_kem/edonk128ref/ref
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
dec.c: dec.c:713:89: warning: for loop has empty body [-Wempty-body]
dec.c: for(i=0; i<(1<<(ErrorBasisDimension+1))+2; i++) Kclear(allcandidates[i]);
dec.c: ^
dec.c: dec.c:713:89: note: put the semicolon on a separate line to silence this warning
dec.c: dec.c:593:76: warning: for loop has empty body [-Wempty-body]
dec.c: for(i=0; i<(1<<(ErrorBasisDimension+1))+2; i++) Kinit(allcandidates[i]);
dec.c: ^
dec.c: dec.c:593:76: note: put the semicolon on a separate line to silence this warning
dec.c: dec.c:598:56: warning: for loop has empty body [-Wempty-body]
dec.c: for(i=0; i<NrColumns; i++) Kinit(Ciphertext.cph[i]);
dec.c: ^
dec.c: dec.c:598:56: note: put the semicolon on a separate line to silence this warning
dec.c: 3 warnings generated.
mpfq_2_128.c: mpfq_2_128.c:154:35: warning: passing 'char *' to parameter of type 'const unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
mpfq_2_128.c: int ret = mpn_set_str(zz, tmp, len, k->io_type);
mpfq_2_128.c: ^~~
mpfq_2_128.c: /home/supercop/benchmarking/supercop-20171218/supercop-data/hydra3/amd64/include/gmp.h:1588:68: note: passing argument to parameter here
mpfq_2_128.c: __GMP_DECLSPEC mp_size_t mpn_set_str (mp_ptr, const unsigned char *, size_t, int);
mpfq_2_128.c: ^
mpfq_2_128.c: 1 warning generated.

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