Implementation notes: amd64, hlopt03, crypto_hash/blake32

Computer: hlopt03
Architecture: amd64
CPU ID: AuthenticAMD-00100f23-178bfbff
SUPERCOP version: 20100509
Operation: crypto_hash
Primitive: blake32
TimeImplementationCompilerBenchmark dateSUPERCOP version
27042refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2010052720100509
27064refgcc -funroll-loops -O2 -fomit-frame-pointer2010052720100509
27067refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2010052720100509
27121sse2gcc -funroll-loops -O -fomit-frame-pointer2010052720100509
27139sse2gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2010052720100509
27150sse2gcc -funroll-loops -m64 -O -fomit-frame-pointer2010052720100509
27163sse2gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2010052720100509
27169sse2gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2010052720100509
27169sse2gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2010052720100509
27188sse2gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2010052720100509
27224refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2010052720100509
27225refgcc -funroll-loops -O3 -fomit-frame-pointer2010052720100509
27339refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2010052720100509
27344refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2010052720100509
27351sse2gcc -m64 -march=nocona -O -fomit-frame-pointer2010052720100509
27361refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2010052720100509
27367refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2010052720100509
27387sse2gcc -march=k8 -O -fomit-frame-pointer2010052720100509
27405sse2gcc -march=nocona -O -fomit-frame-pointer2010052720100509
27430sse2gcc -m64 -march=k8 -O -fomit-frame-pointer2010052720100509
27452sse2gcc -m64 -march=core2 -O -fomit-frame-pointer2010052720100509
27502sse2gcc -m64 -march=core2 -O3 -fomit-frame-pointer2010052720100509
27541sse2gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2010052720100509
27543sse2gcc -fno-schedule-insns -O -fomit-frame-pointer2010052720100509
27544sse2gcc -m64 -march=nocona -O2 -fomit-frame-pointer2010052720100509
27551sse2gcc -march=nocona -O2 -fomit-frame-pointer2010052720100509
27578sse2gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2010052720100509
27583sse2gcc -m64 -O3 -fomit-frame-pointer2010052720100509
27587sse2gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2010052720100509
27589sse2gcc -fno-schedule-insns -O2 -fomit-frame-pointer2010052720100509
27599sse2gcc -m64 -march=k8 -O3 -fomit-frame-pointer2010052720100509
27603sse2gcc -march=nocona -O3 -fomit-frame-pointer2010052720100509
27613sse2gcc -O2 -fomit-frame-pointer2010052720100509
27617sse2gcc -fno-schedule-insns -O3 -fomit-frame-pointer2010052720100509
27632sse2gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2010052720100509
27634sse2gcc -m64 -O -fomit-frame-pointer2010052720100509
27642sse2gcc -O3 -fomit-frame-pointer2010052720100509
27647sse2gcc -march=k8 -O3 -fomit-frame-pointer2010052720100509
27650sse2gcc -O -fomit-frame-pointer2010052720100509
27651sse2gcc -m64 -march=nocona -O3 -fomit-frame-pointer2010052720100509
27724sse2gcc -m64 -march=k8 -O2 -fomit-frame-pointer2010052720100509
27760sse2gcc -m64 -march=core2 -O2 -fomit-frame-pointer2010052720100509
27793refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2010052720100509
27823sse2gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2010052720100509
27830sse2gcc -funroll-loops -O3 -fomit-frame-pointer2010052720100509
27837sse2gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2010052720100509
27840sse2gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2010052720100509
27843sse2gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2010052720100509
27855sse2gcc -march=k8 -O2 -fomit-frame-pointer2010052720100509
27870sse2gcc -m64 -O2 -fomit-frame-pointer2010052720100509
27881sse2gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2010052720100509
27939sse2gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2010052720100509
27947sse2gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2010052720100509
27995sse2gcc -funroll-loops -O2 -fomit-frame-pointer2010052720100509
28061sse2gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2010052720100509
28109sse2gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2010052720100509
28120sse2gcc -march=nocona -Os -fomit-frame-pointer2010052720100509
28128sse2gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2010052720100509
28151sse2gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2010052720100509
28153sse2gcc -m64 -march=nocona -Os -fomit-frame-pointer2010052720100509
28156sse2gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2010052720100509
28193sse2gcc -funroll-loops -Os -fomit-frame-pointer2010052720100509
28215sse2gcc -m64 -march=core2 -Os -fomit-frame-pointer2010052720100509
28219sse2gcc -Os -fomit-frame-pointer2010052720100509
28230sse2gcc -m64 -Os -fomit-frame-pointer2010052720100509
28275sse2gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2010052720100509
28278sse2gcc -funroll-loops -m64 -Os -fomit-frame-pointer2010052720100509
28279sse2gcc -fno-schedule-insns -Os -fomit-frame-pointer2010052720100509
28329sse2gcc -march=k8 -Os -fomit-frame-pointer2010052720100509
28420sse2gcc -m64 -march=k8 -Os -fomit-frame-pointer2010052720100509
29721refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2010052720100509
30006refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2010052720100509
30073refgcc -funroll-loops -Os -fomit-frame-pointer2010052720100509
30199refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2010052720100509
30213refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2010052720100509
30239refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2010052720100509
30316refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2010052720100509
30401refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2010052720100509
30768refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2010052720100509
31778refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2010052720100509
31800refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2010052720100509
31819refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2010052720100509
31823refgcc -funroll-loops -m64 -O -fomit-frame-pointer2010052720100509
31831refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2010052720100509
32119refgcc -funroll-loops -O -fomit-frame-pointer2010052720100509
32342refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2010052720100509
34245refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2010052720100509
34336refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2010052720100509
39087refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2010052720100509
40338refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2010052720100509
42046refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2010052720100509
42090refgcc -march=k8 -O3 -fomit-frame-pointer2010052720100509
42427refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2010052720100509
42552refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2010052720100509
42578refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2010052720100509
42717refgcc -O2 -fomit-frame-pointer2010052720100509
42996refgcc -m64 -O2 -fomit-frame-pointer2010052720100509
43013refgcc -m64 -march=core2 -Os -fomit-frame-pointer2010052720100509
43047refgcc -fno-schedule-insns -Os -fomit-frame-pointer2010052720100509
43322refgcc -march=k8 -O2 -fomit-frame-pointer2010052720100509
43341refgcc -Os -fomit-frame-pointer2010052720100509
43355refgcc -march=k8 -Os -fomit-frame-pointer2010052720100509
43362refgcc -m64 -march=k8 -Os -fomit-frame-pointer2010052720100509
44076refgcc -m64 -O3 -fomit-frame-pointer2010052720100509
44092refgcc -O3 -fomit-frame-pointer2010052720100509
44276refgcc -m64 -Os -fomit-frame-pointer2010052720100509
47817refgcc -march=nocona -O3 -fomit-frame-pointer2010052720100509
48749refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2010052720100509
48835refgcc -fno-schedule-insns -O -fomit-frame-pointer2010052720100509
49026refgcc -m64 -O -fomit-frame-pointer2010052720100509
49098refgcc -m64 -march=core2 -O -fomit-frame-pointer2010052720100509
49109refgcc -O -fomit-frame-pointer2010052720100509
49485refgcc -march=nocona -O -fomit-frame-pointer2010052720100509
49595refgcc -m64 -march=nocona -O -fomit-frame-pointer2010052720100509
50248refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2010052720100509
51396refgcc -march=k8 -O -fomit-frame-pointer2010052720100509
51457refgcc -m64 -march=k8 -O -fomit-frame-pointer2010052720100509
51546refgcc -march=nocona -O2 -fomit-frame-pointer2010052720100509
52606refgcc -m64 -march=nocona -Os -fomit-frame-pointer2010052720100509
53615refgcc -march=nocona -Os -fomit-frame-pointer2010052720100509
126852refcc2010052720100509
127189refgcc -funroll-loops2010052720100509
127443refgcc2010052720100509
244439sse2gcc -funroll-loops2010052720100509
246143sse2gcc2010052720100509
246281sse2cc2010052720100509

Test failure

Implementation: crypto_hash/blake32/ssse3
Compiler: gcc -m64 -march=core2 -O2 -fomit-frame-pointer
error 132
sh: line 1: 28029 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: 27971 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: 28058 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: 28000 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