Implementation notes: amd64, utrecht, crypto_hash/luffa384

Computer: utrecht
Architecture: amd64
CPU ID: GenuineIntel-000006fb-bfebfbff
SUPERCOP version: 20160806
Operation: crypto_hash
Primitive: luffa384
TimeImplementationCompilerBenchmark dateSUPERCOP version
24768ssse3_x64asm-2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080420160731
24777ssse3_x64asmgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080420160731
24858ssse3_x64asmgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080420160731
24858ssse3_x64asm-2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080420160731
25218ssse3_x64asm-2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080420160731
25218ssse3_x64asmgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080420160731
25227ssse3_x64asm-2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080420160731
25245ssse3_x64asmgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080420160731
25614thomaz/asm-PSPar-v2-INTgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080420160731
25632sse2_x64asmgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080420160731
25632thomaz/asm-PSPar-v2-INTgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080420160731
25632sse2_x64asmgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080420160731
25632thomaz/asm-PSPar-v2-INTgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080420160731
25641thomaz/asm-PSPar-v2-INTgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080420160731
25668sse2_x64asmgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080420160731
25713thomaz/asm-PSPar-v2-FPgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080420160731
25731thomaz/asm-PSPar-v2-FPgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080420160731
25749thomaz/asm-PSPar-v2-FPgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080420160731
25749thomaz/asm-PSPar-v2-FPgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080420160731
25776sse2_x64asm-2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080420160731
25812sse2_x64asm-2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080420160731
26028sse2_x64asm-2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080420160731
26037sse2_x64asmgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080420160731
26136sse2_x64asm-2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080420160731
28044sse2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080420160731
28584sse2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080420160731
29142sse2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080420160731
29754ssse3_x64asm-PSgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080420160731
30069ssse3_x64asm-PS-2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080420160731
30267ssse3_x64asm-PS-2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080420160731
30492ssse3_x64asm-PSgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080420160731
30582ssse3_x64asm-PS-2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080420160731
30591ssse3_x64asm-PSgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080420160731
31014sse2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080420160731
31167thomaz/asm-PS-v2-INTgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080420160731
31167thomaz/asm-PS-v2-FPgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080420160731
31167thomaz/asm-PS-v2-FPgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080420160731
31176thomaz/asm-PS-v2-FPgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080420160731
31185thomaz/asm-PS-v2-INTgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080420160731
31194thomaz/asm-PS-v2-FPgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080420160731
31212thomaz/asm-PS-v2-INTgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080420160731
31212thomaz/asm-PS-v2-INTgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080420160731
31887thomaz/asm-PSgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080420160731
31887thomaz/asm-PSgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080420160731
31932thomaz/asm-PSgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080420160731
32004thomaz/asm-PSgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080420160731
68616opt32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080420160731
83502opt32gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080420160731
85797opt32gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080420160731
85968opt32gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080420160731
155223armgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080420160731
160983armgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080420160731
162180armgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080420160731
162747armgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080420160731

Test failure

Implementation: crypto_hash/luffa384/ssse3_x64asm-PS
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
error 111

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ssse3_x64asm-PS ssse3_x64asm-PS-2

Compiler output

Implementation: crypto_hash/luffa384/thomaz/asm-PS
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'crypto_hash_luffa384_thomaz_asm_PS':
hash.c: hash.c:32:2: warning: passing argument 1 of 'fLuffa384' discards 'const' qualifier from pointer target type [enabled by default]
hash.c: fLuffa384(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 fLuffa384(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/luffa384/thomaz/asm-PSPar-v2-FP
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'crypto_hash_luffa384_thomaz_asm_PSPar_v2_FP':
hash.c: hash.c:32:2: warning: passing argument 1 of 'fLuffa384' discards 'const' qualifier from pointer target type [enabled by default]
hash.c: fLuffa384(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 fLuffa384(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/luffa384/thomaz/asm-PSPar-v2-INT
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'crypto_hash_luffa384_thomaz_asm_PSPar_v2_INT':
hash.c: hash.c:32:2: warning: passing argument 1 of 'fLuffa384' discards 'const' qualifier from pointer target type [enabled by default]
hash.c: fLuffa384(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 fLuffa384(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/luffa384/thomaz/asm-PS-v2-FP
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'crypto_hash_luffa384_thomaz_asm_PS_v2_FP':
hash.c: hash.c:32:2: warning: passing argument 1 of 'fLuffa384' discards 'const' qualifier from pointer target type [enabled by default]
hash.c: fLuffa384(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 fLuffa384(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/luffa384/thomaz/asm-PS-v2-INT
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
hash.c: hash.c: In function 'crypto_hash_luffa384_thomaz_asm_PS_v2_INT':
hash.c: hash.c:32:2: warning: passing argument 1 of 'fLuffa384' discards 'const' qualifier from pointer target type [enabled by default]
hash.c: fLuffa384(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 fLuffa384(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