Implementation notes: amd64, ares, crypto_hash/sarmal256

Computer: ares
Architecture: amd64
CPU ID: GenuineIntel-000306a9-bfebfbff
SUPERCOP version: 20130419
Operation: crypto_hash
Primitive: sarmal256
TimeImplementationCompilerBenchmark dateSUPERCOP version
10576asm64gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014012620130419
10576asm64gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014012620130419
10620asm64gcc -march=nocona -O3 -fomit-frame-pointer2014012620130419
10624asm64gcc -m64 -march=nocona -O3 -fomit-frame-pointer2014012620130419
10640asm64gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014012620130419
10648asm64gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014012620130419
10652asm64gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014012620130419
10656asm64gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014012620130419
10720asm64gcc -m64 -march=core2 -O -fomit-frame-pointer2014012620130419
10724asm64gcc -m64 -O -fomit-frame-pointer2014012620130419
10724asm64gcc -m64 -march=corei7 -O -fomit-frame-pointer2014012620130419
10744asm64gcc -O -fomit-frame-pointer2014012620130419
10744asm64gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014012620130419
10752asm64gcc -fno-schedule-insns -O -fomit-frame-pointer2014012620130419
10756asm64gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014012620130419
10768asm64gcc -m64 -march=nocona -O -fomit-frame-pointer2014012620130419
10784asm64gcc -march=nocona -O -fomit-frame-pointer2014012620130419
10828asm64gcc -m64 -march=nocona -O2 -fomit-frame-pointer2014012620130419
10832asm64gcc -march=nocona -O2 -fomit-frame-pointer2014012620130419
10900asm64gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014012620130419
10900asm64gcc -march=barcelona -O3 -fomit-frame-pointer2014012620130419
10932asm64gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014012620130419
10980asm64gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014012620130419
11016opt64gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014012620130419
11020opt64gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014012620130419
11028opt64gcc -funroll-loops -m64 -O -fomit-frame-pointer2014012620130419
11028asm64gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014012620130419
11036opt64gcc -funroll-loops -O -fomit-frame-pointer2014012620130419
11036opt64gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014012620130419
11056asm64gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014012620130419
11056asm64gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014012620130419
11068asm64gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014012620130419
11068asm64gcc -march=barcelona -O2 -fomit-frame-pointer2014012620130419
11092asm64gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014012620130419
11116asm64gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014012620130419
11148asm64gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014012620130419
11260asm64gcc -march=barcelona -O -fomit-frame-pointer2014012620130419
11276asm64gcc -m64 -march=barcelona -O -fomit-frame-pointer2014012620130419
11324asm64gcc -m64 -march=barcelona -O -fomit-frame-pointer2014012620130419
11332asm64gcc -m64 -march=nocona -Os -fomit-frame-pointer2014012620130419
11332asm64gcc -march=nocona -Os -fomit-frame-pointer2014012620130419
11348opt64gcc -funroll-loops -O3 -fomit-frame-pointer2014012620130419
11352asm64gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014012620130419
11360opt64gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014012620130419
11364asm64gcc -m64 -march=corei7 -Os -fomit-frame-pointer2014012620130419
11368asm64gcc -Os -fomit-frame-pointer2014012620130419
11372opt64gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014012620130419
11372asm64gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014012620130419
11380asm64gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014012620130419
11380asm64gcc -m64 -march=core2 -Os -fomit-frame-pointer2014012620130419
11392asm64gcc -m64 -Os -fomit-frame-pointer2014012620130419
11392asm64gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014012620130419
11392asm64gcc -m64 -march=k8 -Os -fomit-frame-pointer2014012620130419
11396asm64gcc -m64 -march=barcelona -Os -fomit-frame-pointer2014012620130419
11396asm64gcc -march=barcelona -Os -fomit-frame-pointer2014012620130419
11396asm64gcc -march=k8 -Os -fomit-frame-pointer2014012620130419
11400asm64gcc -fno-schedule-insns -Os -fomit-frame-pointer2014012620130419
11412asm64gcc -m64 -march=barcelona -Os -fomit-frame-pointer2014012620130419
11420asm64gcc -funroll-loops -m64 -Os -fomit-frame-pointer2014012620130419
11420asm64gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014012620130419
11424asm64gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014012620130419
11424asm64gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014012620130419
11432asm64gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014012620130419
11432asm64gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014012620130419
11436asm64gcc -funroll-loops -Os -fomit-frame-pointer2014012620130419
11448opt64gcc -funroll-loops -O2 -fomit-frame-pointer2014012620130419
11448opt64gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014012620130419
11452opt64gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014012620130419
11528opt64gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014012620130419
11548opt64gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014012620130419
11556opt64gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014012620130419
11556opt64gcc -m64 -march=corei7 -O -fomit-frame-pointer2014012620130419
11564opt64gcc -m64 -O -fomit-frame-pointer2014012620130419
11564opt64gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014012620130419
11572opt64gcc -O -fomit-frame-pointer2014012620130419
11576opt64gcc -m64 -march=core2 -O -fomit-frame-pointer2014012620130419
11592opt64gcc -fno-schedule-insns -O -fomit-frame-pointer2014012620130419
11600opt64gcc -m64 -march=nocona -O -fomit-frame-pointer2014012620130419
11608opt64gcc -march=nocona -O3 -fomit-frame-pointer2014012620130419
11612opt64gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014012620130419
11612opt64gcc -m64 -march=nocona -O3 -fomit-frame-pointer2014012620130419
11616opt64gcc -march=nocona -O -fomit-frame-pointer2014012620130419
11628opt64gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014012620130419
11736opt64gcc -O3 -fomit-frame-pointer2014012620130419
11736opt64gcc -fno-schedule-insns -O3 -fomit-frame-pointer2014012620130419
11736opt64gcc -m64 -O3 -fomit-frame-pointer2014012620130419
11768opt64gcc -m64 -march=core2 -O3 -fomit-frame-pointer2014012620130419
11768opt64gcc -m64 -march=corei7 -O3 -fomit-frame-pointer2014012620130419
11784opt64gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014012620130419
11812opt64gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014012620130419
11840opt64gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014012620130419
11852opt64gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014012620130419
11876opt64gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014012620130419
11912opt64gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014012620130419
11916opt64gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014012620130419
11924opt64gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014012620130419
11924opt64gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014012620130419
11928opt64gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014012620130419
11952opt64gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014012620130419
11952opt64gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014012620130419
11984opt64gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014012620130419
11988opt64gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014012620130419
12112opt64gcc -march=nocona -O2 -fomit-frame-pointer2014012620130419
12124opt64gcc -m64 -march=nocona -O2 -fomit-frame-pointer2014012620130419
12196opt64gcc -O2 -fomit-frame-pointer2014012620130419
12200asm64gcc -funroll-loops2014012620130419
12200opt64gcc -m64 -O2 -fomit-frame-pointer2014012620130419
12204asm64cc2014012620130419
12204opt64gcc -fno-schedule-insns -O2 -fomit-frame-pointer2014012620130419
12208asm64gcc2014012620130419
12248opt64gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014012620130419
12260opt64gcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014012620130419
12264opt64gcc -m64 -march=core2 -O2 -fomit-frame-pointer2014012620130419
12268opt64gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014012620130419
12268opt64gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014012620130419
12268opt64gcc -march=barcelona -O3 -fomit-frame-pointer2014012620130419
12272opt64gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014012620130419
12280opt64gcc -march=k8 -O3 -fomit-frame-pointer2014012620130419
12296opt64gcc -m64 -march=k8 -O3 -fomit-frame-pointer2014012620130419
12496opt64gcc -m64 -march=barcelona -O -fomit-frame-pointer2014012620130419
12504opt64gcc -march=k8 -O -fomit-frame-pointer2014012620130419
12508opt64gcc -m64 -march=barcelona -O -fomit-frame-pointer2014012620130419
12512opt64gcc -m64 -march=k8 -O -fomit-frame-pointer2014012620130419
12528opt64gcc -march=barcelona -O -fomit-frame-pointer2014012620130419
12644opt64gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014012620130419
12676opt64gcc -m64 -march=k8 -O2 -fomit-frame-pointer2014012620130419
12692opt64gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014012620130419
12712opt64gcc -march=barcelona -O2 -fomit-frame-pointer2014012620130419
12712opt64gcc -march=k8 -O2 -fomit-frame-pointer2014012620130419
12728opt64gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014012620130419
12732opt64gcc -funroll-loops -m64 -Os -fomit-frame-pointer2014012620130419
12736opt64gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014012620130419
12740opt64gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014012620130419
12756opt64gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014012620130419
12764opt64gcc -funroll-loops -Os -fomit-frame-pointer2014012620130419
12772opt64gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014012620130419
12868opt64gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014012620130419
12876opt64gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014012620130419
13080opt64gcc -march=nocona -Os -fomit-frame-pointer2014012620130419
13092opt64gcc -m64 -march=nocona -Os -fomit-frame-pointer2014012620130419
13172opt64gcc -Os -fomit-frame-pointer2014012620130419
13192opt64gcc -march=k8 -Os -fomit-frame-pointer2014012620130419
13196opt64gcc -march=barcelona -Os -fomit-frame-pointer2014012620130419
13200opt64gcc -m64 -march=barcelona -Os -fomit-frame-pointer2014012620130419
13204opt64gcc -m64 -march=k8 -Os -fomit-frame-pointer2014012620130419
13212opt64gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014012620130419
13220opt64gcc -m64 -march=barcelona -Os -fomit-frame-pointer2014012620130419
13232opt64gcc -m64 -Os -fomit-frame-pointer2014012620130419
13236opt64gcc -fno-schedule-insns -Os -fomit-frame-pointer2014012620130419
13264opt64gcc -m64 -march=core2 -Os -fomit-frame-pointer2014012620130419
13280opt64gcc -m64 -march=corei7 -Os -fomit-frame-pointer2014012620130419
13292opt64gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014012620130419
27564opt64cc2014012620130419
27564opt64gcc -funroll-loops2014012620130419
27612opt64gcc2014012620130419

Checksum failure

Implementation: crypto_hash/sarmal256/asm64
Compiler: gcc -m64 -march=k8 -O2 -fomit-frame-pointer
3eb9be88f1271c693d908177f324500a7befe6930fdff907df8c1fffbd8fe0ba
Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -m64 -march=k8 -O2 -fomit-frame-pointer asm64
gcc -march=k8 -O2 -fomit-frame-pointer asm64

Test failure

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

Number of similar (compiler,implementation) pairs: 28, namely:
CompilerImplementations
gcc -O2 -fomit-frame-pointer asm64
gcc -O3 -fomit-frame-pointer asm64
gcc -fno-schedule-insns -O2 -fomit-frame-pointer asm64
gcc -fno-schedule-insns -O3 -fomit-frame-pointer asm64
gcc -funroll-loops -O2 -fomit-frame-pointer asm64
gcc -funroll-loops -O3 -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 -m64 -O2 -fomit-frame-pointer asm64
gcc -funroll-loops -m64 -O3 -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 -march=k8 -O2 -fomit-frame-pointer asm64
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer asm64
gcc -m64 -O2 -fomit-frame-pointer asm64
gcc -m64 -O3 -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 -msse4.1 -O2 -fomit-frame-pointer asm64
gcc -m64 -march=core2 -msse4.1 -O3 -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=corei7 -O2 -fomit-frame-pointer asm64
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer asm64
gcc -m64 -march=k8 -O3 -fomit-frame-pointer asm64
gcc -m64 -march=k8 -O -fomit-frame-pointer asm64
gcc -march=k8 -O3 -fomit-frame-pointer asm64
gcc -march=k8 -O -fomit-frame-pointer asm64

Test failure

Implementation: crypto_hash/sarmal256/asm64
Compiler: gcc -funroll-loops -O -fomit-frame-pointer
error 111
crypto_hash does not handle overlap

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
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

Test failure

Implementation: crypto_hash/sarmal256/asm64
Compiler: gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer
error 142
sh: line 1: 12314 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer asm64

Test failure

Implementation: crypto_hash/sarmal256/asm64
Compiler: gcc -funroll-loops -march=k8 -O -fomit-frame-pointer
error 142
sh: line 1: 13107 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer asm64