Implementation notes: amd64, oki, crypto_kem/edonk128ref

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_kem
Primitive: edonk128ref
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
25982552? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019011820181123
26057630? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019011820181123
26078028? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019011820181123
26107450? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019011820181123
26113868? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019011820181123
26114514? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2019011820181123
26122994? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019011820181123
26137574? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019011820181123
26139148? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2019011820181123
26160272? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019011820181123
26176398? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2019011820181123
26192128? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019011820181123
26195540? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019011820181123
26197518? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019011820181123
26201674? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2019011820181123
26204932? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019011820181123
26211248? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011820181123
26231340? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019011820181123
26236796? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019011820181123
26238814? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019011820181123
26242398? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019011820181123
26243096? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019011820181123
26243908? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011820181123
26244070? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019011820181123
26251666? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019011820181123
26253594? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011820181123
26268578? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2019011820181123
26280010? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019011820181123
26295888? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019011820181123
26303702? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019011820181123
26307198? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011820181123
26329450? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019011820181123
26359126? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019011820181123
26363092? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019011820181123
26363446? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019011820181123
26369198? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019011820181123
26374050? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019011820181123
26374264? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2019011820181123
26385272? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019011820181123
26387772? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019011820181123
26390976? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019011820181123
26399670? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2019011820181123
26405340? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019011820181123
26413386? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019011820181123
26422172? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019011820181123
26425306? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019011820181123
26437638? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019011820181123
26460918? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019011820181123
26468576? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019011820181123
26483350? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019011820181123
26533696? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019011820181123
26551510? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019011820181123
26556284? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2019011820181123
26561286? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019011820181123
26563516? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019011820181123
26574408? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019011820181123
26579608? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019011820181123
26582864? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2019011820181123
26588904? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019011820181123
26594598? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019011820181123
26599148? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019011820181123
26619936? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019011820181123
26631150? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019011820181123
26633796? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019011820181123
26635452? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2019011820181123
26647046? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019011820181123
26648648? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019011820181123
26656684? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019011820181123
26659196? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019011820181123
26663504? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019011820181123
26674780? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019011820181123
26680512? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019011820181123
26689542? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019011820181123
26690596? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019011820181123
26693224? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019011820181123
26699386? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019011820181123
26699726? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2019011820181123
26712214? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2019011820181123
26712654? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019011820181123
26722990? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019011820181123
26727744? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019011820181123
26760670? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011820181123
26760958? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019011820181123
26784732? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2019011820181123
26789598? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019011820181123
26817266? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2019011820181123
26830528? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019011820181123
26876238? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019011820181123
26881966? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2019011820181123
26919520? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019011820181123
26934246? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019011820181123
26948106? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019011820181123
26972036? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019011820181123
26986266? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019011820181123
27030650? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019011820181123
27060412? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019011820181123
27089026? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019011820181123
27092084? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019011820181123
27111896? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019011820181123
27148476? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2019011820181123
27248068? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2019011820181123
27266260? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019011820181123
27290590? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019011820181123
27298762? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2019011820181123
27309282? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019011820181123
27316624? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019011820181123
27321476? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019011820181123
27336240? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2019011820181123
27339858? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019011820181123
27457494? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019011820181123
27711966? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019011820181123
27749284? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019011820181123
27785464? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019011820181123
27788908? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019011820181123
27877816? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019011820181123
28190304? ? ?? ? ?refgcc_-funroll-loops2019011820181123
28241566? ? ?? ? ?refgcc2019011820181123
28403096? ? ?? ? ?refcc2019011820181123
28440240? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019011820181123

Compiler output

Implementation: ref
Security model: unknown
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/benchmark/supercop-20181123/supercop-data/oki/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: 8, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -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

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang -O3 -fwrapv -march=native -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: fatal error: error in backend: Cannot select: 0x2412d00: v32i16 = X86ISD::VBROADCAST 0x24466c0
dec.c: 0x24466c0: i16 = truncate 0x23e83f0
dec.c: 0x23e83f0: i64,ch = CopyFromReg 0x22e8430, Register:i64 %vreg16
dec.c: 0x23eb9c0: i64 = Register %vreg16
dec.c: In function: randomOrthogonalBinMatrix
dec.c: clang-3.8: error: clang frontend command failed with exit code 70 (use -v to see invocation)
dec.c: clang version 3.8.0 (tags/RELEASE_380/final 262553)
dec.c: Target: x86_64-unknown-linux-gnu
dec.c: Thread model: posix
dec.c: InstalledDir: /usr/bin
dec.c: clang-3.8: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
dec.c: clang-3.8: note: diagnostic msg:
dec.c: ********************
dec.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -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: fatal error: error in backend: Cannot select: 0xfdcf70: v32i16 = X86ISD::VBROADCAST 0x1032fc0
dec.c: 0x1032fc0: i16 = truncate 0x1017890
dec.c: 0x1017890: i64,ch = CopyFromReg 0xed6430, Register:i64 %vreg16
dec.c: 0x101ae60: i64 = Register %vreg16
dec.c: In function: randomOrthogonalBinMatrix
dec.c: clang-3.8: error: clang frontend command failed with exit code 70 (use -v to see invocation)
dec.c: clang version 3.8.0 (tags/RELEASE_380/final 262553)
dec.c: Target: x86_64-unknown-linux-gnu
dec.c: Thread model: posix
dec.c: InstalledDir: /usr/bin
dec.c: clang-3.8: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
dec.c: clang-3.8: note: diagnostic msg:
dec.c: ********************
dec.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref