Implementation notes: x86, floodyberry, crypto_hash/jh512

Computer: floodyberry
Architecture: x86
CPU ID: GenuineIntel-00010676-bfebfbff
SUPERCOP version: 20140505
Operation: crypto_hash
Primitive: jh512
TimeImplementationCompilerBenchmark dateSUPERCOP version
32263bitslice_sse2_opt32gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
32275bitslice_sse2_opt32gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
32287bitslice_sse2_opt64icc -m32 -O3 -static -xHost -fomit-frame-pointer2014050720140505
33025bitslice_sse2_opt64icc -m32 -O1 -static -xHost -fomit-frame-pointer2014050720140505
34225bitslice_sse2_opt64gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
34275bitslice_sse2_opt64gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
35687bitslice_sse2_opt32icc -m32 -O3 -static -xHost -fomit-frame-pointer2014050720140505
36250bitslice_sse2_opt32icc -m32 -O1 -static -xHost -fomit-frame-pointer2014050720140505
40338bitslice_sse2_opt32clang -O1 -march=native -m32 -fomit-frame-pointer2014050720140505
40912bitslice_sse2_opt64clang -O1 -march=native -m32 -fomit-frame-pointer2014050720140505
41613bitslice_opt64icc -m32 -O3 -static -xHost -fomit-frame-pointer2014050720140505
42988bitslice_opt32icc -m32 -O3 -static -xHost -fomit-frame-pointer2014050720140505
55575bitslice_ref32icc -m32 -O3 -static -xHost -fomit-frame-pointer2014050720140505
65637bitslice_opt32gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
79913bitslice_ref32gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
123987bitslice_opt64gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
152113bitslice_ref64icc -m32 -O3 -static -xHost -fomit-frame-pointer2014050720140505
165525simpleclang -O1 -march=native -m32 -fomit-frame-pointer2014050720140505
190925bitslice_opt32gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
194100bitslice_opt32gcc -m32 -O2 -fomit-frame-pointer2014050720140505
195537bitslice_opt32icc -m32 -O1 -static -xHost -fomit-frame-pointer2014050720140505
202563simpleicc -m32 -O3 -static -xHost -fomit-frame-pointer2014050720140505
204650bitslice_opt32gcc -m32 -O3 -fomit-frame-pointer2014050720140505
217175simpleicc -m32 -O1 -static -xHost -fomit-frame-pointer2014050720140505
228063bitslice_ref64gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
230225bitslice_ref32gcc -m32 -O3 -fomit-frame-pointer2014050720140505
239125bitslice_ref32icc -m32 -O1 -static -xHost -fomit-frame-pointer2014050720140505
246075bitslice_ref32gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
252250bitslice_ref32gcc -m32 -O2 -fomit-frame-pointer2014050720140505
280900bitslice_opt32clang -O1 -march=native -m32 -fomit-frame-pointer2014050720140505
281838bitslice_opt64icc -m32 -O1 -static -xHost -fomit-frame-pointer2014050720140505
295300simplegcc -m32 -O2 -fomit-frame-pointer2014050720140505
295488simplegcc -m32 -O3 -fomit-frame-pointer2014050720140505
296038simplegcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050720140505
296600simplegcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
302838bitslice_ref32clang -O1 -march=native -m32 -fomit-frame-pointer2014050720140505
307850bitslice_opt64clang -O1 -march=native -m32 -fomit-frame-pointer2014050720140505
318088bitslice_ref64icc -m32 -O1 -static -xHost -fomit-frame-pointer2014050720140505
347075bitslice_opt64gcc -m32 -O2 -fomit-frame-pointer2014050720140505
356938bitslice_ref64gcc -m32 -O3 -fomit-frame-pointer2014050720140505
361550bitslice_opt64gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
362400bitslice_ref64clang -O1 -march=native -m32 -fomit-frame-pointer2014050720140505
413675bitslice_opt64gcc -m32 -O3 -fomit-frame-pointer2014050720140505
429525bitslice_ref64gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050720140505
432013bitslice_ref64gcc -m32 -O2 -fomit-frame-pointer2014050720140505

Test failure

Implementation: crypto_hash/jh512/bitslice_opt32
Compiler: clang -O3 -march=native -m32 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 7, namely:
CompilerImplementations
clang -O3 -march=native -m32 -fomit-frame-pointer bitslice_opt32 bitslice_opt64 bitslice_ref32 bitslice_ref64 bitslice_sse2_opt32 bitslice_sse2_opt64 simple

Compiler output

Implementation: crypto_hash/jh512/bitslice_sse2_opt32
Compiler: gcc -m32 -O2 -fomit-frame-pointer
nist.c: In file included from jh_sse2_opt32.h:32:0,
nist.c: from nist.c:2:
nist.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/emmintrin.h:32:3: error: #error "SSE2 instruction set not enabled"
nist.c: In file included from nist.c:2:0:
nist.c: jh_sse2_opt32.h:36:1: error: unknown type name '__m128i'
nist.c: In file included from nist.c:2:0:
nist.c: jh_sse2_opt32.h: In function 'F8':
nist.c: jh_sse2_opt32.h:247:12: error: '__m128i' undeclared (first use in this function)
nist.c: jh_sse2_opt32.h:247:12: note: each undeclared identifier is reported only once for each function it appears in
nist.c: jh_sse2_opt32.h:247:12: error: expected expression before ')' token
nist.c: jh_sse2_opt32.h:248:12: error: expected expression before ')' token
nist.c: jh_sse2_opt32.h:249:12: error: expected expression before ')' token
nist.c: jh_sse2_opt32.h:250:12: error: expected expression before ')' token
nist.c: jh_sse2_opt32.h:254:13: error: expected expression before ')' token
nist.c: jh_sse2_opt32.h:254:13: error: expected expression before ')' token
nist.c: jh_sse2_opt32.h:254:13: error: expected expression before ')' token
nist.c: jh_sse2_opt32.h:254:13: error: expected expression before ')' token
nist.c: jh_sse2_opt32.h:255:13: error: expected expression before ')' token
nist.c: jh_sse2_opt32.h:255:13: error: expected expression before ')' token
nist.c: jh_sse2_opt32.h:255:13: error: expected expression before ')' token
nist.c: jh_sse2_opt32.h:255:13: error: expected expression before ')' token
nist.c: jh_sse2_opt32.h:256:13: error: expected expression before ')' token
nist.c: jh_sse2_opt32.h:256:13: error: expected expression before ')' token
nist.c: jh_sse2_opt32.h:256:13: error: expected expression before ')' token
nist.c: jh_sse2_opt32.h:256:13: error: expected expression before ')' token
nist.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -m32 -O2 -fomit-frame-pointer bitslice_sse2_opt32
gcc -m32 -O3 -fomit-frame-pointer bitslice_sse2_opt32

Compiler output

Implementation: crypto_hash/jh512/bitslice_sse2_opt64
Compiler: gcc -m32 -O2 -fomit-frame-pointer
nist.c: In file included from jh_sse2_opt64.h:32:0,
nist.c: from nist.c:2:
nist.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/emmintrin.h:32:3: error: #error "SSE2 instruction set not enabled"
nist.c: In file included from nist.c:2:0:
nist.c: jh_sse2_opt64.h:36:1: error: unknown type name '__m128i'
nist.c: In file included from nist.c:2:0:
nist.c: jh_sse2_opt64.h: In function 'F8':
nist.c: jh_sse2_opt64.h:255:12: error: '__m128i' undeclared (first use in this function)
nist.c: jh_sse2_opt64.h:255:12: note: each undeclared identifier is reported only once for each function it appears in
nist.c: jh_sse2_opt64.h:255:12: error: expected expression before ')' token
nist.c: jh_sse2_opt64.h:256:12: error: expected expression before ')' token
nist.c: jh_sse2_opt64.h:257:12: error: expected expression before ')' token
nist.c: jh_sse2_opt64.h:258:12: error: expected expression before ')' token
nist.c: jh_sse2_opt64.h:262:13: error: expected expression before ')' token
nist.c: jh_sse2_opt64.h:262:13: error: expected expression before ')' token
nist.c: jh_sse2_opt64.h:262:13: error: expected expression before ')' token
nist.c: jh_sse2_opt64.h:262:13: error: expected expression before ')' token
nist.c: jh_sse2_opt64.h:263:13: error: expected expression before ')' token
nist.c: jh_sse2_opt64.h:263:13: error: expected expression before ')' token
nist.c: jh_sse2_opt64.h:263:13: error: expected expression before ')' token
nist.c: jh_sse2_opt64.h:263:13: error: expected expression before ')' token
nist.c: jh_sse2_opt64.h:264:13: error: expected expression before ')' token
nist.c: jh_sse2_opt64.h:264:13: error: expected expression before ')' token
nist.c: jh_sse2_opt64.h:264:13: error: expected expression before ')' token
nist.c: jh_sse2_opt64.h:264:13: error: expected expression before ')' token
nist.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -m32 -O2 -fomit-frame-pointer bitslice_sse2_opt64
gcc -m32 -O3 -fomit-frame-pointer bitslice_sse2_opt64

Compiler output

Implementation: crypto_hash/jh512/bitslice_opt32
Compiler: icc -m32 -O1 -static -xHost -fomit-frame-pointer
try.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/compiler/lib/intel64/libirc.a while searching for irc
try.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/ipp/../compiler/lib/intel64/libirc.a while searching for irc
try.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/compiler/lib/intel64/libirc.a while searching for irc
try.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/compiler/lib/intel64/libirc.a while searching for irc
try.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/ipp/../compiler/lib/intel64/libirc.a while searching for irc
try.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/compiler/lib/intel64/libirc.a while searching for irc
measure.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/compiler/lib/intel64/libirc.a while searching for irc
measure.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/ipp/../compiler/lib/intel64/libirc.a while searching for irc
measure.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/compiler/lib/intel64/libirc.a while searching for irc

Number of similar (compiler,implementation) pairs: 14, namely:
CompilerImplementations
icc -m32 -O1 -static -xHost -fomit-frame-pointer bitslice_opt32 bitslice_opt64 bitslice_ref32 bitslice_ref64 bitslice_sse2_opt32 bitslice_sse2_opt64 simple
icc -m32 -O3 -static -xHost -fomit-frame-pointer bitslice_opt32 bitslice_opt64 bitslice_ref32 bitslice_ref64 bitslice_sse2_opt32 bitslice_sse2_opt64 simple