Implementation notes: amd64, h4atom, crypto_hash/shavite3512

Computer: h4atom
Architecture: amd64
CPU ID: GenuineIntel-000106ca-bfe9fbff
SUPERCOP version: 20160806
Operation: crypto_hash
Primitive: shavite3512
TimeImplementationCompilerBenchmark dateSUPERCOP version
154736sphlibgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016081220160806
155672sphlibgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016081220160806
155904sphlibgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016081220160806
159616sphlib-smallgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016081220160806
162056sphlib-smallgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016081220160806
166928sphlib-smallgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016081220160806
168376sphlibgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016081220160806
170424sphlibclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016081220160806
182272sphlib-smallgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016081220160806
189536sphlib-smallclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016081220160806
193664IntelL1Cachegcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016081220160806
201624low-memgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016081220160806
207960IntelL1Cachegcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016081220160806
211216IntelL1Cacheclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016081220160806
212976low-memgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016081220160806
220320lower-memgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016081220160806
220672IntelL1Cachegcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016081220160806
222144lower-memgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016081220160806
222632low-memgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016081220160806
224496low-memgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016081220160806
226712low-memclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016081220160806
228528IntelL1Cachegcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016081220160806
233328lower-memclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016081220160806
247328lower-memgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016081220160806
254808lower-memgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016081220160806
444768no-saltclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016081220160806
445784new-aes-roundgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016081220160806
455000new-aes-roundgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016081220160806
462960new-aes-roundgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016081220160806
475064no-saltgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016081220160806
478024no-saltgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016081220160806
484040new-aes-roundgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016081220160806
488368different-orderclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016081220160806
492056new-aes-roundclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016081220160806
495320no-saltgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016081220160806
495448different-ordergcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016081220160806
506512different-ordergcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016081220160806
511400different-ordergcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016081220160806
512896different-ordergcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016081220160806
526616no-saltgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016081220160806
5935848-bitgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016081220160806
6442088-bitclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016081220160806
7130968-bitgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016081220160806
11132568-bitgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016081220160806
19741288-bitgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016081220160806

Test failure

Implementation: crypto_hash/shavite3512/aes-instruct
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
error 111

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

Compiler output

Implementation: crypto_hash/shavite3512/8-bit
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
SHAvite3.c: In file included from SHAvite3.c:11:
SHAvite3.c: ./portable.h:109:2: warning: NEITHER NESSIE_LITTLE_ENDIAN NOR NESSIE_BIG_ENDIAN ARE DEFINED!!!!! [-W#warnings]
SHAvite3.c: #warning NEITHER NESSIE_LITTLE_ENDIAN NOR NESSIE_BIG_ENDIAN ARE DEFINED!!!!!
SHAvite3.c: ^
SHAvite3.c: ./portable.h:510:1: warning: '/*' within block comment [-Wcomment]
SHAvite3.c: /* "x++" is passed as an argument, thus increasing x 4 times instead of one */
SHAvite3.c: ^
SHAvite3.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 7, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments 8-bit IntelL1Cache different-order low-mem lower-mem new-aes-round no-salt

Compiler output

Implementation: crypto_hash/shavite3512/aes-instruct
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
hash.c: In file included from hash.c:4:
hash.c: In file included from ./SHA3api_ref.h:13:
hash.c: ./compress.h:140:9: error: invalid operand for instruction
hash.c: asm ("movaps xmm0, [SHAVITE512_PTXT]");
hash.c: ^
hash.c: gt;:1:15: note: instantiated into assembly here
hash.c: movaps xmm0, [SHAVITE512_PTXT]
hash.c: ^~~~~~~~~~~~~~~~~
hash.c: In file included from hash.c:4:
hash.c: In file included from ./SHA3api_ref.h:13:
hash.c: ./compress.h:141:9: error: invalid operand for instruction
hash.c: asm ("movaps xmm1, [SHAVITE512_PTXT+16]");
hash.c: ^
hash.c: gt;:1:15: note: instantiated into assembly here
hash.c: movaps xmm1, [SHAVITE512_PTXT+16]
hash.c: ^~~~~~~~~~~~~~~~~~~~
hash.c: In file included from hash.c:4:
hash.c: In file included from ./SHA3api_ref.h:13:
hash.c: ./compress.h:142:9: error: invalid operand for instruction
hash.c: asm ("movaps xmm2, [SHAVITE512_PTXT+32]");
hash.c: ^
hash.c: gt;:1:15: note: instantiated into assembly here
hash.c: movaps xmm2, [SHAVITE512_PTXT+32]
hash.c: ^~~~~~~~~~~~~~~~~~~~
hash.c: In file included from hash.c:4:
hash.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments aes-instruct

Compiler output

Implementation: crypto_hash/shavite3512/8-bit
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
SHAvite3.c: In file included from SHAvite3.c:11:0:
SHAvite3.c: portable.h:109:2: warning: #warning NEITHER NESSIE_LITTLE_ENDIAN NOR NESSIE_BIG_ENDIAN ARE DEFINED!!!!! [-Wcpp]
SHAvite3.c: #warning NEITHER NESSIE_LITTLE_ENDIAN NOR NESSIE_BIG_ENDIAN ARE DEFINED!!!!!
SHAvite3.c: ^

Number of similar (compiler,implementation) pairs: 28, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv 8-bit IntelL1Cache different-order low-mem lower-mem new-aes-round no-salt
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv 8-bit IntelL1Cache different-order low-mem lower-mem new-aes-round no-salt
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv 8-bit IntelL1Cache different-order low-mem lower-mem new-aes-round no-salt
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv 8-bit IntelL1Cache different-order low-mem lower-mem new-aes-round no-salt