Implementation notes: amd64, bigmem, crypto_hash/sarmal512

Computer: bigmem
Architecture: amd64
CPU ID: GenuineIntel-000206e6-bfebfbff
SUPERCOP version: 20141124
Operation: crypto_hash
Primitive: sarmal512
TimeImplementationCompilerBenchmark dateSUPERCOP version
13988opt64gcc -funroll-loops -O -fomit-frame-pointer2015021520141124
13997opt64gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2015021520141124
14002opt64gcc -funroll-loops -m64 -O -fomit-frame-pointer2015021520141124
14005opt64gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2015021520141124
14025opt64gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2015021520141124
14371asm64gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2015021520141124
14376asm64gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2015021520141124
14651asm64gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2015021520141124
14651asm64gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2015021520141124
14739asm64gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2015021520141124
14742opt64gcc -O -fomit-frame-pointer2015021520141124
14745opt64gcc -fno-schedule-insns -O -fomit-frame-pointer2015021520141124
14747opt64gcc -m64 -O -fomit-frame-pointer2015021520141124
14756asm64gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2015021520141124
14759opt64gcc -march=nocona -O -fomit-frame-pointer2015021520141124
14813opt64gcc -m64 -march=nocona -O -fomit-frame-pointer2015021520141124
14875asm64gcc -m64 -march=barcelona -O -fomit-frame-pointer2015021520141124
14880asm64gcc -march=barcelona -O -fomit-frame-pointer2015021520141124
14960opt64gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2015021520141124
14960opt64gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2015021520141124
14966opt64gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2015021520141124
14968opt64gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2015021520141124
14968opt64gcc -m64 -march=core2 -O -fomit-frame-pointer2015021520141124
14971opt64gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2015021520141124
14974opt64gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2015021520141124
14977opt64gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2015021520141124
15008asm64gcc -march=nocona -O -fomit-frame-pointer2015021520141124
15045asm64gcc -m64 -march=nocona -O -fomit-frame-pointer2015021520141124
15501opt64gcc -march=barcelona -O -fomit-frame-pointer2015021520141124
15504opt64gcc -m64 -march=barcelona -O -fomit-frame-pointer2015021520141124
15549asm64cc2015021520141124
15549asm64gcc2015021520141124
15555asm64gcc -funroll-loops2015021520141124
15578opt64gcc -m64 -march=k8 -O -fomit-frame-pointer2015021520141124
15606opt64gcc -march=k8 -O -fomit-frame-pointer2015021520141124
15921opt64gcc -m64 -march=nocona -Os -fomit-frame-pointer2015021520141124
15926opt64gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2015021520141124
15958opt64gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2015021520141124
15991opt64gcc -march=nocona -Os -fomit-frame-pointer2015021520141124
16054opt64gcc -march=nocona -O3 -fomit-frame-pointer2015021520141124
16079opt64gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2015021520141124
16079opt64gcc -m64 -march=nocona -O3 -fomit-frame-pointer2015021520141124
16088opt64gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2015021520141124
16102opt64gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2015021520141124
16110opt64gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2015021520141124
16156opt64gcc -march=nocona -O2 -fomit-frame-pointer2015021520141124
16181opt64gcc -m64 -march=nocona -O2 -fomit-frame-pointer2015021520141124
16195opt64gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2015021520141124
16201opt64gcc -march=barcelona -Os -fomit-frame-pointer2015021520141124
16207opt64gcc -funroll-loops -m64 -Os -fomit-frame-pointer2015021520141124
16215opt64gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2015021520141124
16215opt64gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2015021520141124
16215opt64gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2015021520141124
16221opt64gcc -funroll-loops -Os -fomit-frame-pointer2015021520141124
16221opt64gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2015021520141124
16226opt64gcc -m64 -march=core2 -Os -fomit-frame-pointer2015021520141124
16227opt64gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2015021520141124
16232opt64gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2015021520141124
16266opt64gcc -m64 -march=barcelona -Os -fomit-frame-pointer2015021520141124
16269opt64gcc -fno-schedule-insns -Os -fomit-frame-pointer2015021520141124
16274opt64gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2015021520141124
16277opt64gcc -m64 -march=k8 -Os -fomit-frame-pointer2015021520141124
16312opt64gcc -m64 -Os -fomit-frame-pointer2015021520141124
16320opt64gcc -march=k8 -Os -fomit-frame-pointer2015021520141124
16323opt64gcc -Os -fomit-frame-pointer2015021520141124
16334opt64gcc -funroll-loops -O3 -fomit-frame-pointer2015021520141124
16337opt64gcc -fno-schedule-insns -O3 -fomit-frame-pointer2015021520141124
16337opt64gcc -m64 -O3 -fomit-frame-pointer2015021520141124
16354opt64gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2015021520141124
16371opt64gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2015021520141124
16374opt64gcc -O3 -fomit-frame-pointer2015021520141124
16422opt64gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2015021520141124
16430opt64gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2015021520141124
16436opt64gcc -funroll-loops -O2 -fomit-frame-pointer2015021520141124
16541opt64gcc -O2 -fomit-frame-pointer2015021520141124
16541opt64gcc -m64 -O2 -fomit-frame-pointer2015021520141124
16561opt64gcc -fno-schedule-insns -O2 -fomit-frame-pointer2015021520141124
17031opt64gcc -march=barcelona -O2 -fomit-frame-pointer2015021520141124
17034opt64gcc -m64 -march=core2 -O2 -fomit-frame-pointer2015021520141124
17037opt64gcc -m64 -march=k8 -O2 -fomit-frame-pointer2015021520141124
17046opt64gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2015021520141124
17048opt64gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2015021520141124
17062opt64gcc -march=k8 -O2 -fomit-frame-pointer2015021520141124
17073opt64gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2015021520141124
17082opt64gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2015021520141124
19063opt64gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2015021520141124
19063opt64gcc -march=k8 -O3 -fomit-frame-pointer2015021520141124
19074opt64gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2015021520141124
19085opt64gcc -march=barcelona -O3 -fomit-frame-pointer2015021520141124
19088opt64gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2015021520141124
19091opt64gcc -m64 -march=k8 -O3 -fomit-frame-pointer2015021520141124
19100opt64gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2015021520141124
19102opt64gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2015021520141124
19131opt64gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2015021520141124
19134opt64gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2015021520141124
19182opt64gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2015021520141124
19204opt64gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2015021520141124
19224opt64gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2015021520141124
19233opt64gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2015021520141124
19244opt64gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2015021520141124
19258opt64gcc -m64 -march=core2 -O3 -fomit-frame-pointer2015021520141124
30390opt64gcc -funroll-loops2015021520141124
30523opt64cc2015021520141124
30572opt64gcc2015021520141124

Test failure

Implementation: crypto_hash/sarmal512/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/sarmal512/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/sarmal512/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