Implementation notes: amd64, enigma, crypto_hash/sarmal256

Computer: enigma
Architecture: amd64
CPU ID: GenuineIntel-000006fb-bfebfbff
SUPERCOP version: 20140529
Operation: crypto_hash
Primitive: sarmal256
TimeImplementationCompilerBenchmark dateSUPERCOP version
13428opt64gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014053120140529
13455opt64gcc -funroll-loops -O -fomit-frame-pointer2014053120140529
13455opt64gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014053120140529
13455opt64gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014053120140529
13464opt64gcc -funroll-loops -m64 -O -fomit-frame-pointer2014053120140529
13635opt64gcc -O -fomit-frame-pointer2014053120140529
13635opt64gcc -m64 -O -fomit-frame-pointer2014053120140529
13671opt64gcc -fno-schedule-insns -O -fomit-frame-pointer2014053120140529
13680asm64gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014053120140529
13689opt64gcc -march=nocona -O -fomit-frame-pointer2014053120140529
13707asm64gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014053120140529
13788asm64gcc -m64 -march=nocona -O -fomit-frame-pointer2014053120140529
13797opt64gcc -m64 -march=nocona -O -fomit-frame-pointer2014053120140529
13797asm64gcc -march=nocona -O -fomit-frame-pointer2014053120140529
13995asm64gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014053120140529
14004asm64gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014053120140529
14049asm64gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014053120140529
14130asm64gcc -m64 -march=barcelona -O -fomit-frame-pointer2014053120140529
14130opt64gcc -march=barcelona -O2 -fomit-frame-pointer2014053120140529
14130asm64gcc -march=barcelona -O -fomit-frame-pointer2014053120140529
14157opt64gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014053120140529
14166opt64gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014053120140529
14184asm64gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014053120140529
14301opt64gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014053120140529
14301opt64gcc -march=k8 -O2 -fomit-frame-pointer2014053120140529
14310opt64gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014053120140529
14310opt64gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014053120140529
14328opt64gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014053120140529
14346opt64gcc -m64 -march=k8 -O2 -fomit-frame-pointer2014053120140529
14373opt64gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014053120140529
14382opt64gcc -m64 -march=core2 -O -fomit-frame-pointer2014053120140529
14382opt64gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014053120140529
14409opt64gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014053120140529
14535asm64cc2014053120140529
14535asm64gcc2014053120140529
14562asm64gcc -funroll-loops2014053120140529
14850opt64gcc -m64 -march=k8 -O -fomit-frame-pointer2014053120140529
14850opt64gcc -march=barcelona -O -fomit-frame-pointer2014053120140529
14859opt64gcc -m64 -march=barcelona -O -fomit-frame-pointer2014053120140529
14868opt64gcc -m64 -march=barcelona -O -fomit-frame-pointer2014053120140529
14976opt64gcc -march=k8 -O -fomit-frame-pointer2014053120140529
15156opt64gcc -m64 -march=nocona -O3 -fomit-frame-pointer2014053120140529
15228opt64gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014053120140529
15228opt64gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014053120140529
15282opt64gcc -O3 -fomit-frame-pointer2014053120140529
15282opt64gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014053120140529
15282opt64gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014053120140529
15282opt64gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014053120140529
15282opt64gcc -m64 -O3 -fomit-frame-pointer2014053120140529
15282opt64gcc -march=nocona -O3 -fomit-frame-pointer2014053120140529
15291opt64gcc -fno-schedule-insns -O3 -fomit-frame-pointer2014053120140529
15309opt64gcc -funroll-loops -Os -fomit-frame-pointer2014053120140529
15318opt64gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014053120140529
15327opt64gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014053120140529
15327opt64gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014053120140529
15327opt64gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014053120140529
15336opt64gcc -funroll-loops -O3 -fomit-frame-pointer2014053120140529
15345opt64gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014053120140529
15390opt64gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014053120140529
15390opt64gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014053120140529
15399opt64gcc -Os -fomit-frame-pointer2014053120140529
15408opt64gcc -fno-schedule-insns -Os -fomit-frame-pointer2014053120140529
15408opt64gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014053120140529
15417opt64gcc -m64 -Os -fomit-frame-pointer2014053120140529
15417opt64gcc -m64 -march=nocona -Os -fomit-frame-pointer2014053120140529
15426opt64gcc -m64 -march=barcelona -Os -fomit-frame-pointer2014053120140529
15426opt64gcc -march=barcelona -Os -fomit-frame-pointer2014053120140529
15426opt64gcc -march=k8 -Os -fomit-frame-pointer2014053120140529
15435opt64gcc -m64 -march=k8 -Os -fomit-frame-pointer2014053120140529
15435opt64gcc -march=nocona -Os -fomit-frame-pointer2014053120140529
15444opt64gcc -funroll-loops -m64 -Os -fomit-frame-pointer2014053120140529
15444opt64gcc -m64 -march=core2 -Os -fomit-frame-pointer2014053120140529
15453opt64gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014053120140529
15489opt64gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014053120140529
15534opt64gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014053120140529
15543opt64gcc -funroll-loops -O2 -fomit-frame-pointer2014053120140529
15543opt64gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014053120140529
15561opt64gcc -O2 -fomit-frame-pointer2014053120140529
15570opt64gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014053120140529
15579opt64gcc -m64 -O2 -fomit-frame-pointer2014053120140529
15579opt64gcc -m64 -march=barcelona -Os -fomit-frame-pointer2014053120140529
15606opt64gcc -march=nocona -O2 -fomit-frame-pointer2014053120140529
15651opt64gcc -fno-schedule-insns -O2 -fomit-frame-pointer2014053120140529
15660opt64gcc -m64 -march=nocona -O2 -fomit-frame-pointer2014053120140529
16209opt64gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014053120140529
16236opt64gcc -m64 -march=core2 -O2 -fomit-frame-pointer2014053120140529
16254opt64gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014053120140529
16371opt64gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014053120140529
18027opt64gcc -march=barcelona -O3 -fomit-frame-pointer2014053120140529
18036opt64gcc -m64 -march=k8 -O3 -fomit-frame-pointer2014053120140529
18045opt64gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014053120140529
18045opt64gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014053120140529
18054opt64gcc -march=k8 -O3 -fomit-frame-pointer2014053120140529
18063opt64gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014053120140529
18099opt64gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014053120140529
18144opt64gcc -m64 -march=core2 -O3 -fomit-frame-pointer2014053120140529
18144opt64gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014053120140529
18153opt64gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014053120140529
18171opt64gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014053120140529
18180opt64gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014053120140529
18198opt64gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014053120140529
18216opt64gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014053120140529
18216opt64gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014053120140529
18234opt64gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014053120140529
28719opt64cc2014053120140529
28863opt64gcc2014053120140529
28881opt64gcc -funroll-loops2014053120140529

Test failure

Implementation: crypto_hash/sarmal256/asm64
Compiler: gcc -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 69, namely:
CompilerImplementations
gcc -O2 -fomit-frame-pointer asm64
gcc -O3 -fomit-frame-pointer asm64
gcc -Os -fomit-frame-pointer asm64
gcc -fno-schedule-insns -O2 -fomit-frame-pointer asm64
gcc -fno-schedule-insns -O3 -fomit-frame-pointer asm64
gcc -fno-schedule-insns -Os -fomit-frame-pointer asm64
gcc -funroll-loops -O2 -fomit-frame-pointer asm64
gcc -funroll-loops -O3 -fomit-frame-pointer asm64
gcc -funroll-loops -Os -fomit-frame-pointer asm64
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer asm64
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer asm64
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer asm64
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer asm64
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer asm64
gcc -funroll-loops -m64 -Os -fomit-frame-pointer asm64
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer asm64
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer asm64
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer asm64
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer asm64
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer asm64
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer asm64
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer asm64
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer asm64
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer asm64
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer asm64
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer asm64
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer asm64
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer asm64
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer asm64
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer asm64
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer asm64
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer asm64
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer asm64
gcc -m64 -O2 -fomit-frame-pointer asm64
gcc -m64 -O3 -fomit-frame-pointer asm64
gcc -m64 -Os -fomit-frame-pointer asm64
gcc -m64 -march=core2 -O2 -fomit-frame-pointer asm64
gcc -m64 -march=core2 -O3 -fomit-frame-pointer asm64
gcc -m64 -march=core2 -O -fomit-frame-pointer asm64
gcc -m64 -march=core2 -Os -fomit-frame-pointer asm64
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer asm64
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer asm64
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer asm64
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer asm64
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer asm64
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer asm64
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer asm64
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer asm64
gcc -m64 -march=k8 -O2 -fomit-frame-pointer asm64
gcc -m64 -march=k8 -O3 -fomit-frame-pointer asm64
gcc -m64 -march=k8 -O -fomit-frame-pointer asm64
gcc -m64 -march=k8 -Os -fomit-frame-pointer asm64
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer asm64
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer asm64
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer asm64
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer asm64
gcc -m64 -march=nocona -O2 -fomit-frame-pointer asm64
gcc -m64 -march=nocona -O3 -fomit-frame-pointer asm64
gcc -m64 -march=nocona -Os -fomit-frame-pointer asm64
gcc -march=barcelona -O2 -fomit-frame-pointer asm64
gcc -march=barcelona -O3 -fomit-frame-pointer asm64
gcc -march=barcelona -Os -fomit-frame-pointer asm64
gcc -march=k8 -O2 -fomit-frame-pointer asm64
gcc -march=k8 -O3 -fomit-frame-pointer asm64
gcc -march=k8 -O -fomit-frame-pointer asm64
gcc -march=k8 -Os -fomit-frame-pointer asm64
gcc -march=nocona -O2 -fomit-frame-pointer asm64
gcc -march=nocona -O3 -fomit-frame-pointer asm64
gcc -march=nocona -Os -fomit-frame-pointer asm64

Test failure

Implementation: crypto_hash/sarmal256/asm64
Compiler: gcc -O -fomit-frame-pointer
error 111
crypto_hash is nondeterministic

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -O -fomit-frame-pointer asm64
gcc -fno-schedule-insns -O -fomit-frame-pointer asm64
gcc -funroll-loops -O -fomit-frame-pointer asm64
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer asm64
gcc -funroll-loops -m64 -O -fomit-frame-pointer asm64
gcc -m64 -O -fomit-frame-pointer asm64

Test failure

Implementation: crypto_hash/sarmal256/asm64
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
error 111
error 111

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer asm64
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer asm64
gcc -m64 -march=barcelona -Os -fomit-frame-pointer asm64