Implementation notes: amd64, genji262, crypto_aead/joltikneq8048v1

Computer: genji262
Architecture: amd64
CPU ID: AuthenticAMD-00800f12-178bfbff
SUPERCOP version: 20191017
Operation: crypto_aead
Primitive: joltikneq8048v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
19690033504 368 051837 1216 864vpermicc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
19690033504 368 051837 1216 864vpermicc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
19694433504 368 051837 1216 864vpermicc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
19696633504 368 051837 1216 864vpermicc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
19951833424 368 051789 1216 864vpermicc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
19951833424 368 051789 1216 864vpermicc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
19954033424 368 051789 1216 864vpermicc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
19954033424 368 051789 1216 864vpermicc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
20710835152 368 052189 1216 864vpermicc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
20805435120 368 052213 1216 864vpermicc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
290626614684 0 029747 792 872refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
319517016376 0 030649 800 896refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
323182214726 0 029475 792 856refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
366988629424 0 046509 840 864reficc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
367180029536 0 047861 840 864reficc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
367213029144 0 046173 840 864reficc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
367279029944 0 048301 840 864reficc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
367606829536 0 047861 840 864reficc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
368253629944 0 048301 840 864reficc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
368339429536 0 047861 840 864reficc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
368610029944 0 048301 840 864reficc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
368682629944 0 048301 840 864reficc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
368838829536 0 047861 840 864reficc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
386922829560 0 048285 840 864reficc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
387079029800 0 048125 840 864reficc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
387945829560 0 048285 840 864reficc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
388753229800 0 048125 840 864reficc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
389312014430 0 028643 792 872refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
389351629800 0 048125 840 864reficc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
389723414430 0 028643 792 872refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
392834229560 0 048285 840 864reficc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
396862429560 0 048285 840 864reficc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
401469229800 0 048125 840 864reficc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
628269413304 0 026129 800 896refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
757075012505 0 024233 784 856refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
780467611942 0 024649 800 896refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
809890411265 0 022836 776 896refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017

Test failure

Implementation: ref
Security model: unknown
Compiler: icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer ref
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer ref
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer ref
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer ref
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer ref
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer ref
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer vperm
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer vperm
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer vperm
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer vperm
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer vperm
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer vperm

Test failure

Implementation: vperm
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 111
crypto_aead_decrypt returns nonzero

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE vperm
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE vperm
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE vperm
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE vperm
icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer vperm
icc -march=broadwell -mtune=broadwell -O3 -fomit-frame-pointer vperm
icc -march=core-avx2 -mtune=core-avx2 -O2 -fomit-frame-pointer vperm
icc -march=core-avx2 -mtune=core-avx2 -O3 -fomit-frame-pointer vperm
icc -march=haswell -mtune=haswell -O2 -fomit-frame-pointer vperm
icc -march=haswell -mtune=haswell -O3 -fomit-frame-pointer vperm
icc -march=skylake -mtune=skylake -O2 -fomit-frame-pointer vperm
icc -march=skylake -mtune=skylake -O3 -fomit-frame-pointer vperm

Compiler output

Implementation: vperm
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
joltik.c: In file included from joltik.c:25:
joltik.c: In file included from ./joltik-avx2.c.inc:27:
joltik.c: In file included from /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/xmmintrin.h:31:
joltik.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:55:72: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
joltik.c: extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
joltik.c: ^
joltik.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:61:72: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
joltik.c: extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
joltik.c: ^
joltik.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:68:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
joltik.c: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
joltik.c: ^
joltik.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:74:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
joltik.c: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
joltik.c: ^
joltik.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:84:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
joltik.c: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
joltik.c: ^
joltik.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:90:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
joltik.c: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
joltik.c: ^
joltik.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:97:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
joltik.c: extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
joltik.c: ^
joltik.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/mmintrin.h:103:74: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
joltik.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE vperm
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE vperm
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE vperm
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE vperm

Compiler output

Implementation: vperm
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
joltik.c: joltik.c:29:3: error: "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: ^
joltik.c: 1 error generated.

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