Implementation notes: amd64, pluton1mn, crypto_hash/luffa512

Computer: pluton1mn
Architecture: amd64
CPU ID: GenuineIntel-00050671-bfebfbff
SUPERCOP version: 20160806
Operation: crypto_hash
Primitive: luffa512
TimeImplementationCompilerBenchmark dateSUPERCOP version
48986ssse3_x64asmgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
48986ssse3_x64asmicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
48986ssse3_x64asm-2icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
48986ssse3_x64asmicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
49000ssse3_x64asm-2icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
49084ssse3_x64asm-2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
49140ssse3_x64asmgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
49140ssse3_x64asm-2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
49140ssse3_x64asmgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
49154ssse3_x64asm-2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
49168ssse3_x64asmgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
49168ssse3_x64asm-2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
49700sse2_x64asmicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
49700sse2_x64asm-2icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
49714sse2_x64asm-2icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
49728sse2_x64asmicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
49742sse2_x64asmgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
49798sse2_x64asm-2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
49840sse2_x64asmgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
49840sse2_x64asm-2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
49854sse2_x64asmgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
49854sse2_x64asm-2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
49882sse2_x64asmgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
49980sse2_x64asm-2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
52794thomaz/asm-PSPar-v2-FPicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
52794thomaz/asm-PSPar-v2-INTicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
52794thomaz/asm-PSPar-v2-FPicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
52794thomaz/asm-PSPar-v2-INTicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
56798sse2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
56868sse2icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
58170sse2icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
58282sse2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
58464sse2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
60844thomaz/asm-PSPar-v2-INTgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
60844thomaz/asm-PSPar-v2-INTgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
60844thomaz/asm-PSPar-v2-INTgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
60858thomaz/asm-PSPar-v2-INTgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
60942thomaz/asm-PSPar-v2-FPgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
60942thomaz/asm-PSPar-v2-FPgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
60942thomaz/asm-PSPar-v2-FPgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
60956thomaz/asm-PSPar-v2-FPgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
61096sse2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
86366sphlibicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
90202sphlibgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
90454sphlibgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
91728sphlibgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
94108opt32icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
94318opt32icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
96334sphlibgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
100716armgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
105000sphlibicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
105630armicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
106330armicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
112840armgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
114492thomaz/asm-PS-v2-FPicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
114492thomaz/asm-PS-v2-INTicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
114660thomaz/asm-PS-v2-FPicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
114674thomaz/asm-PS-v2-INTicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
114772thomaz/asm-PSicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
115010opt32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
118454ssse3_x64asm-PSicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
118496ssse3_x64asm-PS-2icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
118748ssse3_x64asm-PS-2icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
118762ssse3_x64asm-PSicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
120232armgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
126266armgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
140770ssse3_x64asm-PSgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
140784ssse3_x64asm-PSgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
140910ssse3_x64asm-PSgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
141190thomaz/asm-PS-v2-FPgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
141190ssse3_x64asm-PS-2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
141204thomaz/asm-PS-v2-FPgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
141274thomaz/asm-PS-v2-INTgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
141288thomaz/asm-PS-v2-INTgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
141330thomaz/asm-PS-v2-INTgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
141358ssse3_x64asm-PSgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
141456ssse3_x64asm-PS-2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
141456thomaz/asm-PS-v2-FPgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
141512thomaz/asm-PS-v2-INTgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
141708ssse3_x64asm-PS-2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
141722thomaz/asm-PSgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
141722thomaz/asm-PSgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
141778thomaz/asm-PSgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
141918thomaz/asm-PSgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
142016ssse3_x64asm-PS-2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
142044thomaz/asm-PS-v2-FPgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
165396thomaz/asm-PSicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
179690opt32gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
180572opt32gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
184310opt32gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731

Compiler output

Implementation: crypto_hash/luffa512/thomaz/asm-PS
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'crypto_hash_luffa512_thomaz_asm_PS':
hash.c: hash.c:32:12: warning: passing argument 1 of 'fLuffa512' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: fLuffa512(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 fLuffa512(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/luffa512/thomaz/asm-PSPar-v2-FP
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'crypto_hash_luffa512_thomaz_asm_PSPar_v2_FP':
hash.c: hash.c:32:12: warning: passing argument 1 of 'fLuffa512' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: fLuffa512(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 fLuffa512(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/luffa512/thomaz/asm-PSPar-v2-INT
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'crypto_hash_luffa512_thomaz_asm_PSPar_v2_INT':
hash.c: hash.c:32:12: warning: passing argument 1 of 'fLuffa512' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: fLuffa512(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 fLuffa512(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/luffa512/thomaz/asm-PS-v2-FP
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'crypto_hash_luffa512_thomaz_asm_PS_v2_FP':
hash.c: hash.c:32:12: warning: passing argument 1 of 'fLuffa512' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: fLuffa512(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 fLuffa512(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/luffa512/thomaz/asm-PS-v2-INT
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'crypto_hash_luffa512_thomaz_asm_PS_v2_INT':
hash.c: hash.c:32:12: warning: passing argument 1 of 'fLuffa512' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
hash.c: fLuffa512(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 fLuffa512(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/luffa512/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: fLuffa512(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