Implementation notes: amd64, pluton1mn, crypto_hash/luffa256

Computer: pluton1mn
Architecture: amd64
CPU ID: GenuineIntel-00050671-bfebfbff
SUPERCOP version: 20160806
Operation: crypto_hash
Primitive: luffa256
TimeImplementationCompilerBenchmark dateSUPERCOP version
26320thomaz/asm-PSPar-v2-INTgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
26320sse2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
26320thomaz/asm-PSPar-v2-INTgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
26320thomaz/asm-PSPar-v2-INTgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
26320thomaz/asm-PSPar-v2-INTgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
26320thomaz/asm-PSPar-v2-INTicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
26320thomaz/asm-PSPar-v2-INTicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
26474thomaz/asm-PSPar-v2-FPgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
26474thomaz/asm-PSPar-v2-FPgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
26474thomaz/asm-PSPar-v2-FPgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
26474thomaz/asm-PSPar-v2-FPicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
26474thomaz/asm-PSPar-v2-FPicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
26488thomaz/asm-PSPar-v2-FPgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
27076sse2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
27146sse2icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
27202sse2icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
27678sse2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
29862ssse3_x64asmicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
29862ssse3_x64asmicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
29862ssse3_x64asm-2icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
29876ssse3_x64asm-2icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
29904ssse3_x64asmgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
29904ssse3_x64asm-2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
29988ssse3_x64asmgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
29988ssse3_x64asm-2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
29988ssse3_x64asmgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
29988ssse3_x64asm-2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
30072ssse3_x64asm-2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
30086ssse3_x64asmgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
30184sse2_x64asmicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
30184sse2_x64asm-2icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
30184sse2_x64asmicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
30184sse2_x64asm-2icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
30212sse2_x64asmgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
30212sse2_x64asm-2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
30282sse2_x64asm-2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
30282sse2_x64asmgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
30282sse2_x64asm-2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
30310sse2_x64asmgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
30352sse2_x64asmgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
30366sse2_x64asm-2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
30534sse2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
44912thomaz/basicicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
46102sphlibicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
46606thomaz/basicicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
47614opt32icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
48160sphlibicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
48552opt32icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
49952sphlibgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
50400sphlibgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
50470sphlibgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
54572sphlibgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
55762opt32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
55972armgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
56322armicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
56756armicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
56938thomaz/basicgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
62678armgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
65156opt32gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
65408armgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
66052thomaz/asm-PS-v2-FPicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
66052thomaz/asm-PS-v2-INTicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
66052thomaz/asm-PS-v2-FPicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
66052thomaz/asm-PS-v2-INTicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
66192thomaz/asm-PSicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
66192thomaz/asm-PSicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
66276thomaz/asm-PS-v2-INTgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
66276thomaz/asm-PS-v2-INTgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
66290thomaz/asm-PS-v2-INTgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
66318thomaz/asm-PSgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
66318thomaz/asm-PS-v2-FPgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
66318thomaz/asm-PSgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
66318thomaz/asm-PS-v2-FPgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
66318thomaz/asm-PSgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
66318thomaz/asm-PS-v2-FPgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
66332thomaz/asm-PSgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
66332thomaz/asm-PS-v2-FPgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
66332thomaz/asm-PS-v2-INTgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
66892opt32gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
68208opt32gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
68838armgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
104258ssse3_x64asm-PSicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
104258ssse3_x64asm-PS-2icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
104286ssse3_x64asm-PS-2icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
104454ssse3_x64asm-PSicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
120162ssse3_x64asm-PS-2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
120442ssse3_x64asm-PS-2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
120540ssse3_x64asm-PS-2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
120694ssse3_x64asm-PS-2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
120708ssse3_x64asm-PSgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
121002ssse3_x64asm-PSgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
121086ssse3_x64asm-PSgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
121156ssse3_x64asm-PSgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
169876thomaz/basicgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
365568thomaz/basicgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
366632thomaz/basicgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731

Compiler output

Implementation: crypto_hash/luffa256/thomaz/asm-PS
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'crypto_hash_luffa256_thomaz_asm_PS':
hash.c: hash.c:32:12: warning: passing argument 1 of 'fLuffa256' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: fLuffa256(in, out, inlen);
hash.c: ^~
hash.c: hash.c:29:6: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
hash.c: void fLuffa256(unsigned char *input, unsigned char *output, int len);
hash.c: ^~~~~~~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv thomaz/asm-PS
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv thomaz/asm-PS
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv thomaz/asm-PS
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv thomaz/asm-PS

Compiler output

Implementation: crypto_hash/luffa256/thomaz/asm-PSPar-v2-FP
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'crypto_hash_luffa256_thomaz_asm_PSPar_v2_FP':
hash.c: hash.c:32:12: warning: passing argument 1 of 'fLuffa256' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: fLuffa256(in, out, inlen);
hash.c: ^~
hash.c: hash.c:29:6: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
hash.c: void fLuffa256(unsigned char *input, unsigned char *output, int len);
hash.c: ^~~~~~~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv thomaz/asm-PSPar-v2-FP
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv thomaz/asm-PSPar-v2-FP
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv thomaz/asm-PSPar-v2-FP
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv thomaz/asm-PSPar-v2-FP

Compiler output

Implementation: crypto_hash/luffa256/thomaz/asm-PSPar-v2-INT
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'crypto_hash_luffa256_thomaz_asm_PSPar_v2_INT':
hash.c: hash.c:32:12: warning: passing argument 1 of 'fLuffa256' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: fLuffa256(in, out, inlen);
hash.c: ^~
hash.c: hash.c:29:6: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
hash.c: void fLuffa256(unsigned char *input, unsigned char *output, int len);
hash.c: ^~~~~~~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv thomaz/asm-PSPar-v2-INT
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv thomaz/asm-PSPar-v2-INT
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv thomaz/asm-PSPar-v2-INT
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv thomaz/asm-PSPar-v2-INT

Compiler output

Implementation: crypto_hash/luffa256/thomaz/asm-PS-v2-FP
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'crypto_hash_luffa256_thomaz_asm_PS_v2_FP':
hash.c: hash.c:32:12: warning: passing argument 1 of 'fLuffa256' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: fLuffa256(in, out, inlen);
hash.c: ^~
hash.c: hash.c:29:6: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
hash.c: void fLuffa256(unsigned char *input, unsigned char *output, int len);
hash.c: ^~~~~~~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv thomaz/asm-PS-v2-FP
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv thomaz/asm-PS-v2-FP
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv thomaz/asm-PS-v2-FP
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv thomaz/asm-PS-v2-FP

Compiler output

Implementation: crypto_hash/luffa256/thomaz/asm-PS-v2-INT
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'crypto_hash_luffa256_thomaz_asm_PS_v2_INT':
hash.c: hash.c:32:12: warning: passing argument 1 of 'fLuffa256' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: fLuffa256(in, out, inlen);
hash.c: ^~
hash.c: hash.c:29:6: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
hash.c: void fLuffa256(unsigned char *input, unsigned char *output, int len);
hash.c: ^~~~~~~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv thomaz/asm-PS-v2-INT
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv thomaz/asm-PS-v2-INT
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv thomaz/asm-PS-v2-INT
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv thomaz/asm-PS-v2-INT

Compiler output

Implementation: crypto_hash/luffa256/thomaz/asm-PS
Compiler: icc -xMIC-AVX512 -O2 -fomit-frame-pointer
hash.c: hash.c(32): warning #2330: argument of type "const unsigned char *" is incompatible with parameter of type "unsigned char *" (dropping qualifiers)
hash.c: fLuffa256(in, out, inlen);
hash.c: ^
hash.c:

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
icc -xMIC-AVX512 -O2 -fomit-frame-pointer thomaz/asm-PS thomaz/asm-PS-v2-FP thomaz/asm-PS-v2-INT thomaz/asm-PSPar-v2-FP thomaz/asm-PSPar-v2-INT
icc -xMIC-AVX512 -O3 -fomit-frame-pointer thomaz/asm-PS thomaz/asm-PS-v2-FP thomaz/asm-PS-v2-INT thomaz/asm-PSPar-v2-FP thomaz/asm-PSPar-v2-INT