Implementation notes: amd64, pmnod076, crypto_aead/hs1sivlov2

Computer: pmnod076
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20191017
Operation: crypto_aead
Primitive: hs1sivlov2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
418422794 0 042163 848 896dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102320191017
420019448 0 042877 872 928dolbeau/amd64-avx2icc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019102320191017
424221352 0 044893 872 928dolbeau/amd64-avx512icc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019102320191017
424620234 0 036918 840 896dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102320191017
425019384 0 042925 872 928dolbeau/amd64-avx2icc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019102320191017
425421544 0 044973 872 928dolbeau/amd64-avx512icc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019102320191017
426419528 0 043565 872 928dolbeau/amd64-avx2icc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019102320191017
427419624 0 043309 872 928dolbeau/amd64-avx2icc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019102320191017
429021432 0 045469 872 928dolbeau/amd64-avx512icc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019102320191017
431421544 0 045229 872 928dolbeau/amd64-avx512icc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019102320191017
438619609 0 036086 840 896dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102320191017
461612205 0 027446 824 896dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102320191017
468417784 0 040613 872 864dolbeau/amd64-avx2icc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102320191017
469017784 0 040613 872 864dolbeau/amd64-avx2icc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102320191017
474811522 0 031075 848 896fastergcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102320191017
477417784 0 040613 872 864dolbeau/amd64-avx2icc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102320191017
477817784 0 040613 872 864dolbeau/amd64-avx2icc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102320191017
479017592 0 040821 872 864dolbeau/amd64-avx2icc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102320191017
479617264 0 041029 872 928fastericc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019102320191017
480016192 0 039517 872 864fastericc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102320191017
480617592 0 040821 872 864dolbeau/amd64-avx2icc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102320191017
480617592 0 040821 872 864dolbeau/amd64-avx2icc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102320191017
482416208 0 039117 872 864fastericc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102320191017
484417592 0 040821 872 864dolbeau/amd64-avx2icc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102320191017
485017264 0 041397 872 928fastericc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019102320191017
485816208 0 039117 872 864fastericc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102320191017
485816640 0 040213 872 928fastericc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019102320191017
486016192 0 039517 872 864fastericc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102320191017
486216192 0 039517 872 864fastericc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102320191017
486216640 0 040133 872 928fastericc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019102320191017
486416208 0 039117 872 864fastericc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102320191017
486416208 0 039117 872 864fastericc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102320191017
486616192 0 039517 872 864fastericc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102320191017
48908367 0 025142 840 896fastergcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102320191017
49768199 0 024798 840 896fastergcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102320191017
50187654 0 022878 824 896fastergcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102320191017
647213976 0 037661 872 928dolbeau/amd64-sseicc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019102320191017
649413768 0 037165 872 928dolbeau/amd64-sseicc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019102320191017
657213912 0 037949 872 928dolbeau/amd64-sseicc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019102320191017
658413752 0 037261 872 928dolbeau/amd64-sseicc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019102320191017
659213440 0 036333 872 864dolbeau/amd64-sseicc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102320191017
660613440 0 036333 872 864dolbeau/amd64-sseicc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102320191017
661413784 0 036613 872 864dolbeau/amd64-sseicc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102320191017
662013784 0 036613 872 864dolbeau/amd64-sseicc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102320191017
663013784 0 036613 872 864dolbeau/amd64-sseicc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102320191017
663213784 0 036613 872 864dolbeau/amd64-sseicc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102320191017
666619202 0 038563 848 896dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102320191017
667013440 0 036333 872 864dolbeau/amd64-sseicc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102320191017
669013440 0 036333 872 864dolbeau/amd64-sseicc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102320191017
671813480 0 036709 872 864dolbeau/amd64-sseicc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102320191017
674416730 0 033358 840 896dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102320191017
674413952 0 035557 872 864dolbeau/amd64-sseicc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102320191017
675014848 0 036477 872 864fastericc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102320191017
675813480 0 036709 872 864dolbeau/amd64-sseicc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102320191017
677413480 0 036709 872 864dolbeau/amd64-sseicc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102320191017
678213480 0 036709 872 864dolbeau/amd64-sseicc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102320191017
679613192 0 036053 872 864dolbeau/amd64-sseicc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102320191017
679613192 0 036053 872 864dolbeau/amd64-sseicc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102320191017
680413192 0 036053 872 864dolbeau/amd64-sseicc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102320191017
680813192 0 036053 872 864dolbeau/amd64-sseicc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102320191017
685015376 0 037109 872 864fastericc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102320191017
690415630 0 032054 840 896dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102320191017
69448001 0 023166 824 896dolbeau/amd64-ssegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102320191017
699413912 0 035461 872 864dolbeau/amd64-sseicc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102320191017
1477445176 0 068917 872 928reficc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019102320191017
1504038184 0 061069 872 864reficc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102320191017
1505238184 0 061069 872 864reficc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102320191017
1505638184 0 061069 872 864reficc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102320191017
1507634824 0 058277 872 928reficc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019102320191017
1512638184 0 061069 872 864reficc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102320191017
1515837976 0 061261 872 864reficc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102320191017
1524447208 0 071301 872 928reficc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019102320191017
1529234792 0 058357 872 928reficc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019102320191017
1530237976 0 061261 872 864reficc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102320191017
1531837976 0 061261 872 864reficc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102320191017
1533237976 0 061261 872 864reficc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102320191017
1703235120 0 058069 872 864reficc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102320191017
1703435120 0 058069 872 864reficc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102320191017
1703835120 0 058069 872 864reficc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102320191017
1708435120 0 058069 872 864reficc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102320191017
1710636128 0 059045 872 864reficc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102320191017
1711832528 0 054189 872 864reficc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102320191017
1712436128 0 059045 872 864reficc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102320191017
1715232992 0 054597 872 864reficc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102320191017
1715236128 0 059045 872 864reficc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102320191017
1717236128 0 059045 872 864reficc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102320191017
214865732 0 025219 848 896refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102320191017
281085084 0 021822 840 896refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102320191017
310604054 0 019270 824 896refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102320191017
372285580 0 022203 848 896refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102320191017

Test failure

Implementation: crypto_aead/hs1sivlov2/dolbeau/amd64-avx2
Compiler: icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer dolbeau/amd64-avx2 dolbeau/amd64-avx512 dolbeau/amd64-sse faster ref
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer dolbeau/amd64-avx2 dolbeau/amd64-avx512 dolbeau/amd64-sse faster ref

Compiler output

Implementation: crypto_aead/hs1sivlov2/dolbeau/amd64-avx512
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: encrypt.c:317:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: 317 | unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: | ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.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/immintrin.h:55,
encrypt.c: from encrypt.c:54:
encrypt.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/avx512fintrin.h:15726:1: note: previous definition of '_mm512_reduce_add_epi64' was here
encrypt.c: 15726 | _mm512_reduce_add_epi64 (__m512i __A)
encrypt.c: | ^~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/amd64-avx512
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/amd64-avx512
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/amd64-avx512
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/amd64-avx512

Compiler output

Implementation: crypto_aead/hs1sivlov2/dolbeau/amd64-avx512
Compiler: icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
encrypt.c: encrypt.c(90): error: #error directive: "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^
encrypt.c:
encrypt.c: compilation aborted for encrypt.c (code 2)

Number of similar (compiler,implementation) pairs: 18, namely:
CompilerImplementations
icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=broadwell -mtune=broadwell -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=core-avx2 -mtune=core-avx2 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=core-avx2 -mtune=core-avx2 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=haswell -mtune=haswell -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=haswell -mtune=haswell -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=skylake -mtune=skylake -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -march=skylake -mtune=skylake -O3 -fomit-frame-pointer dolbeau/amd64-avx512

Compiler output

Implementation: crypto_aead/hs1sivlov2/faster
Compiler: icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
hs1.c: hs1.c(1033): warning #266: function "malloc" declared implicitly
hs1.c: unsigned char *tmp = malloc(abytes);
hs1.c: ^
hs1.c:
hs1.c: hs1.c(1037): warning #266: function "free" declared implicitly
hs1.c: free(tmp);
hs1.c: ^
hs1.c:

Number of similar (compiler,implementation) pairs: 24, namely:
CompilerImplementations
icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer faster
icc -march=broadwell -mtune=broadwell -O3 -fomit-frame-pointer faster
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer faster
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer faster
icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer faster
icc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer faster
icc -march=core-avx2 -mtune=core-avx2 -O2 -fomit-frame-pointer faster
icc -march=core-avx2 -mtune=core-avx2 -O3 -fomit-frame-pointer faster
icc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer faster
icc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer faster
icc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer faster
icc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer faster
icc -march=haswell -mtune=haswell -O2 -fomit-frame-pointer faster
icc -march=haswell -mtune=haswell -O3 -fomit-frame-pointer faster
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer faster
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer faster
icc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer faster
icc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer faster
icc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer faster
icc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer faster
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer faster
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer faster
icc -march=skylake -mtune=skylake -O2 -fomit-frame-pointer faster
icc -march=skylake -mtune=skylake -O3 -fomit-frame-pointer faster

Compiler output

Implementation: crypto_aead/hs1sivlov2/dolbeau/amd64-avx2
Compiler: icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer
encrypt.c: encrypt.c(90): error: #error directive: "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^
encrypt.c:
encrypt.c: compilation aborted for encrypt.c (code 2)

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer dolbeau/amd64-avx2
icc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer dolbeau/amd64-avx2