Implementation notes: amd64, hlopt02, crypto_hash/blake32

Computer: hlopt02
Architecture: amd64
CPU ID: AuthenticAMD-00100f23-178bfbff
SUPERCOP version: 20100425
Operation: crypto_hash
Primitive: blake32
TimeImplementationCompilerBenchmark dateSUPERCOP version
26975refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2010050320100425
27064refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2010050320100425
27067refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2010050320100425
27117refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2010050320100425
27130refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2010050320100425
27131sse2gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2010050320100425
27132sse2gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2010050320100425
27144sse2gcc -funroll-loops -m64 -O -fomit-frame-pointer2010050320100425
27145sse2gcc -funroll-loops -O -fomit-frame-pointer2010050320100425
27148sse2gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2010050320100425
27154sse2gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2010050320100425
27207sse2gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2010050320100425
27214refgcc -funroll-loops -O3 -fomit-frame-pointer2010050320100425
27261refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2010050320100425
27296refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2010050320100425
27340refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2010050320100425
27365refgcc -funroll-loops -O2 -fomit-frame-pointer2010050320100425
27372sse2gcc -m64 -march=k8 -O -fomit-frame-pointer2010050320100425
27372sse2gcc -march=nocona -O -fomit-frame-pointer2010050320100425
27382sse2gcc -march=k8 -O -fomit-frame-pointer2010050320100425
27401sse2gcc -m64 -march=nocona -O -fomit-frame-pointer2010050320100425
27405sse2gcc -fno-schedule-insns -O -fomit-frame-pointer2010050320100425
27463sse2gcc -m64 -march=core2 -O3 -fomit-frame-pointer2010050320100425
27544sse2gcc -m64 -march=core2 -O2 -fomit-frame-pointer2010050320100425
27548sse2gcc -O -fomit-frame-pointer2010050320100425
27555sse2gcc -m64 -O3 -fomit-frame-pointer2010050320100425
27559sse2gcc -m64 -march=core2 -O -fomit-frame-pointer2010050320100425
27563sse2gcc -march=nocona -O2 -fomit-frame-pointer2010050320100425
27578sse2gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2010050320100425
27581sse2gcc -fno-schedule-insns -O3 -fomit-frame-pointer2010050320100425
27620sse2gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2010050320100425
27621sse2gcc -fno-schedule-insns -O2 -fomit-frame-pointer2010050320100425
27636sse2gcc -march=nocona -O3 -fomit-frame-pointer2010050320100425
27642sse2gcc -m64 -march=k8 -O2 -fomit-frame-pointer2010050320100425
27643sse2gcc -m64 -march=k8 -O3 -fomit-frame-pointer2010050320100425
27647sse2gcc -m64 -O -fomit-frame-pointer2010050320100425
27683sse2gcc -march=k8 -O2 -fomit-frame-pointer2010050320100425
27687sse2gcc -m64 -march=nocona -O2 -fomit-frame-pointer2010050320100425
27703sse2gcc -m64 -march=nocona -O3 -fomit-frame-pointer2010050320100425
27713sse2gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2010050320100425
27717sse2gcc -march=k8 -O3 -fomit-frame-pointer2010050320100425
27726sse2gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2010050320100425
27771sse2gcc -O2 -fomit-frame-pointer2010050320100425
27845sse2gcc -O3 -fomit-frame-pointer2010050320100425
27847sse2gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2010050320100425
27852sse2gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2010050320100425
27852sse2gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2010050320100425
27874sse2gcc -m64 -O2 -fomit-frame-pointer2010050320100425
27878sse2gcc -funroll-loops -O2 -fomit-frame-pointer2010050320100425
27878sse2gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2010050320100425
27880sse2gcc -funroll-loops -O3 -fomit-frame-pointer2010050320100425
27963sse2gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2010050320100425
27981sse2gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2010050320100425
27988sse2gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2010050320100425
27991sse2gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2010050320100425
28018sse2gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2010050320100425
28031sse2gcc -march=nocona -Os -fomit-frame-pointer2010050320100425
28068sse2gcc -funroll-loops -m64 -Os -fomit-frame-pointer2010050320100425
28069sse2gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2010050320100425
28091sse2gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2010050320100425
28102sse2gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2010050320100425
28110sse2gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2010050320100425
28134sse2gcc -funroll-loops -Os -fomit-frame-pointer2010050320100425
28175sse2gcc -m64 -march=core2 -Os -fomit-frame-pointer2010050320100425
28248sse2gcc -m64 -march=nocona -Os -fomit-frame-pointer2010050320100425
28337sse2gcc -march=k8 -Os -fomit-frame-pointer2010050320100425
28408sse2gcc -fno-schedule-insns -Os -fomit-frame-pointer2010050320100425
28409sse2gcc -m64 -Os -fomit-frame-pointer2010050320100425
28433sse2gcc -m64 -march=k8 -Os -fomit-frame-pointer2010050320100425
28463sse2gcc -Os -fomit-frame-pointer2010050320100425
29849refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2010050320100425
30063refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2010050320100425
30212refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2010050320100425
30238refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2010050320100425
30239refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2010050320100425
30250refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2010050320100425
30272refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2010050320100425
30278refgcc -funroll-loops -Os -fomit-frame-pointer2010050320100425
30291refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2010050320100425
31736refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2010050320100425
31809refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2010050320100425
31891refgcc -funroll-loops -m64 -O -fomit-frame-pointer2010050320100425
31911refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2010050320100425
31981refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2010050320100425
31988refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2010050320100425
32033refgcc -funroll-loops -O -fomit-frame-pointer2010050320100425
34100refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2010050320100425
35164refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2010050320100425
39073refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2010050320100425
39694refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2010050320100425
40202refgcc -m64 -O3 -fomit-frame-pointer2010050320100425
40235refgcc -O3 -fomit-frame-pointer2010050320100425
40921refgcc -march=k8 -O2 -fomit-frame-pointer2010050320100425
41983refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2010050320100425
42652refgcc -m64 -march=core2 -Os -fomit-frame-pointer2010050320100425
42728refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2010050320100425
42738refgcc -O2 -fomit-frame-pointer2010050320100425
43177refgcc -fno-schedule-insns -Os -fomit-frame-pointer2010050320100425
43335refgcc -m64 -Os -fomit-frame-pointer2010050320100425
43450refgcc -m64 -O2 -fomit-frame-pointer2010050320100425
43916refgcc -march=k8 -O3 -fomit-frame-pointer2010050320100425
44090refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2010050320100425
44230refgcc -Os -fomit-frame-pointer2010050320100425
44235refgcc -march=k8 -Os -fomit-frame-pointer2010050320100425
44721refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2010050320100425
47202refgcc -m64 -march=k8 -Os -fomit-frame-pointer2010050320100425
47208refgcc -march=nocona -O3 -fomit-frame-pointer2010050320100425
48330refgcc -m64 -march=nocona -O -fomit-frame-pointer2010050320100425
48758refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2010050320100425
48869refgcc -m64 -O -fomit-frame-pointer2010050320100425
48898refgcc -fno-schedule-insns -O -fomit-frame-pointer2010050320100425
48905refgcc -march=nocona -O -fomit-frame-pointer2010050320100425
48975refgcc -O -fomit-frame-pointer2010050320100425
49258refgcc -m64 -march=core2 -O -fomit-frame-pointer2010050320100425
50343refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2010050320100425
50513refgcc -march=nocona -O2 -fomit-frame-pointer2010050320100425
51285refgcc -m64 -march=nocona -Os -fomit-frame-pointer2010050320100425
51393refgcc -m64 -march=k8 -O -fomit-frame-pointer2010050320100425
52221refgcc -march=nocona -Os -fomit-frame-pointer2010050320100425
52224refgcc -march=k8 -O -fomit-frame-pointer2010050320100425
126661refgcc2010050320100425
127509refgcc -funroll-loops2010050320100425
127559refcc2010050320100425
246511sse2cc2010050320100425
246595sse2gcc -funroll-loops2010050320100425
248127sse2gcc2010050320100425

Test failure

Implementation: crypto_hash/blake32/ssse3
Compiler: gcc -m64 -march=core2 -O2 -fomit-frame-pointer
error 132
sh: line 1: 24402 Illegal instruction ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m64 -march=core2 -O2 -fomit-frame-pointer ssse3

Test failure

Implementation: crypto_hash/blake32/ssse3
Compiler: gcc -m64 -march=core2 -O3 -fomit-frame-pointer
error 132
sh: line 1: 24344 Illegal instruction ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ssse3

Test failure

Implementation: crypto_hash/blake32/ssse3
Compiler: gcc -m64 -march=core2 -O -fomit-frame-pointer
error 132
sh: line 1: 24431 Illegal instruction ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m64 -march=core2 -O -fomit-frame-pointer ssse3

Test failure

Implementation: crypto_hash/blake32/ssse3
Compiler: gcc -m64 -march=core2 -Os -fomit-frame-pointer
error 132
sh: line 1: 24373 Illegal instruction ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m64 -march=core2 -Os -fomit-frame-pointer ssse3

Compiler output

Implementation: crypto_hash/blake32/ssse3
Compiler: cc
hash.c: In file included from hash.c:5:
hash.c: /usr/lib/gcc/x86_64-redhat-linux/4.1.2/include/tmmintrin.h:34:3: error: #error "SSSE3 instruction set not enabled"
hash.c: hash.c: In function 'blake32_compress':
hash.c: hash.c:196: error: incompatible types in assignment
hash.c: hash.c:196: error: incompatible types in assignment
hash.c: hash.c:196: error: incompatible types in assignment
hash.c: hash.c:196: error: incompatible types in assignment
hash.c: hash.c:197: error: incompatible types in assignment
hash.c: hash.c:197: error: incompatible types in assignment
hash.c: hash.c:197: error: incompatible types in assignment
hash.c: ...
hash.c: hash.c:203: error: incompatible types in assignment
hash.c: hash.c:203: error: incompatible types in assignment
hash.c: hash.c:204: error: incompatible types in assignment
hash.c: hash.c:204: error: incompatible types in assignment
hash.c: hash.c:204: error: incompatible types in assignment
hash.c: hash.c:204: error: incompatible types in assignment
hash.c: hash.c:205: error: incompatible types in assignment
hash.c: hash.c:205: error: incompatible types in assignment
hash.c: hash.c:205: error: incompatible types in assignment
hash.c: hash.c:205: error: incompatible types in assignment

Number of similar (compiler,implementation) pairs: 59, namely:
CompilerImplementations
cc ssse3
gcc ssse3
gcc -O2 -fomit-frame-pointer ssse3
gcc -O3 -fomit-frame-pointer ssse3
gcc -O -fomit-frame-pointer ssse3
gcc -Os -fomit-frame-pointer ssse3
gcc -fno-schedule-insns -O2 -fomit-frame-pointer ssse3
gcc -fno-schedule-insns -O3 -fomit-frame-pointer ssse3
gcc -fno-schedule-insns -O -fomit-frame-pointer ssse3
gcc -fno-schedule-insns -Os -fomit-frame-pointer ssse3
gcc -funroll-loops ssse3
gcc -funroll-loops -O2 -fomit-frame-pointer ssse3
gcc -funroll-loops -O3 -fomit-frame-pointer ssse3
gcc -funroll-loops -O -fomit-frame-pointer ssse3
gcc -funroll-loops -Os -fomit-frame-pointer ssse3
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ssse3
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ssse3
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ssse3
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -O -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ssse3
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer ssse3
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer ssse3
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer ssse3
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ssse3
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer ssse3
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer ssse3
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer ssse3
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ssse3
gcc -m64 -O2 -fomit-frame-pointer ssse3
gcc -m64 -O3 -fomit-frame-pointer ssse3
gcc -m64 -O -fomit-frame-pointer ssse3
gcc -m64 -Os -fomit-frame-pointer ssse3
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ssse3
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ssse3
gcc -m64 -march=k8 -O -fomit-frame-pointer ssse3
gcc -m64 -march=k8 -Os -fomit-frame-pointer ssse3
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ssse3
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ssse3
gcc -m64 -march=nocona -O -fomit-frame-pointer ssse3
gcc -m64 -march=nocona -Os -fomit-frame-pointer ssse3
gcc -march=k8 -O2 -fomit-frame-pointer ssse3
gcc -march=k8 -O3 -fomit-frame-pointer ssse3
gcc -march=k8 -O -fomit-frame-pointer ssse3
gcc -march=k8 -Os -fomit-frame-pointer ssse3
gcc -march=nocona -O2 -fomit-frame-pointer ssse3
gcc -march=nocona -O3 -fomit-frame-pointer ssse3
gcc -march=nocona -O -fomit-frame-pointer ssse3
gcc -march=nocona -Os -fomit-frame-pointer ssse3