Implementation notes: amd64, h9ivy, crypto_hash/sarmal256

Computer: h9ivy
Architecture: amd64
CPU ID: GenuineIntel-000306a9-bfebfbff
SUPERCOP version: 20141014
Operation: crypto_hash
Primitive: sarmal256
TimeImplementationCompilerBenchmark dateSUPERCOP version
10576asm64gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014042920140425
10576asm64gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014042920140425
10640asm64gcc -march=nocona -O3 -fomit-frame-pointer2014042920140425
10644asm64gcc -m64 -march=nocona -O3 -fomit-frame-pointer2014042920140425
10648asm64gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014042920140425
10652asm64gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014042920140425
10656asm64gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014042920140425
10660asm64gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014042920140425
10748asm64gcc -fno-schedule-insns -O -fomit-frame-pointer2014042920140425
10752asm64gcc -m64 -march=corei7 -O -fomit-frame-pointer2014042920140425
10756asm64gcc -m64 -march=core-avx-i -O -fomit-frame-pointer2014042920140425
10756asm64gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014042920140425
10760asm64gcc -m64 -O -fomit-frame-pointer2014042920140425
10760asm64gcc -m64 -march=core2 -O -fomit-frame-pointer2014042920140425
10764asm64gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014042920140425
10764asm64gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014042920140425
10772asm64gcc -O -fomit-frame-pointer2014042920140425
10780asm64gcc -m64 -march=corei7-avx -O -fomit-frame-pointer2014042920140425
10840asm64gcc -march=nocona -O -fomit-frame-pointer2014042920140425
10848asm64gcc -m64 -march=nocona -O2 -fomit-frame-pointer2014042920140425
10848asm64gcc -march=nocona -O2 -fomit-frame-pointer2014042920140425
10852asm64gcc -m64 -march=nocona -O -fomit-frame-pointer2014042920140425
10944asm64gcc -march=barcelona -O3 -fomit-frame-pointer2014042920140425
10964asm64gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014042920140425
10964asm64gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014042920140425
10976asm64gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014042920140425
10984asm64gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014042920140425
11000asm64gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014042920140425
11128asm64gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014042920140425
11132asm64gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014042920140425
11136asm64gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014042920140425
11136asm64gcc -march=barcelona -O2 -fomit-frame-pointer2014042920140425
11204opt64gcc -funroll-loops -m64 -O -fomit-frame-pointer2014042920140425
11216opt64gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014042920140425
11220opt64gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014042920140425
11224opt64gcc -funroll-loops -O -fomit-frame-pointer2014042920140425
11236opt64gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014042920140425
11292asm64gcc -m64 -march=barcelona -O -fomit-frame-pointer2014042920140425
11292asm64gcc -m64 -march=k8 -Os -fomit-frame-pointer2014042920140425
11296asm64gcc -m64 -march=barcelona -Os -fomit-frame-pointer2014042920140425
11296asm64gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014042920140425
11296asm64gcc -march=barcelona -O -fomit-frame-pointer2014042920140425
11312asm64gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2014042920140425
11312asm64gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014042920140425
11316asm64gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2014042920140425
11332asm64gcc -fno-schedule-insns -Os -fomit-frame-pointer2014042920140425
11332asm64gcc -m64 -Os -fomit-frame-pointer2014042920140425
11332asm64gcc -march=k8 -Os -fomit-frame-pointer2014042920140425
11340asm64gcc -m64 -march=core2 -Os -fomit-frame-pointer2014042920140425
11340asm64gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014042920140425
11348asm64gcc -march=barcelona -Os -fomit-frame-pointer2014042920140425
11352asm64gcc -m64 -march=corei7 -Os -fomit-frame-pointer2014042920140425
11352asm64gcc -march=nocona -Os -fomit-frame-pointer2014042920140425
11360asm64gcc -Os -fomit-frame-pointer2014042920140425
11388asm64gcc -m64 -march=nocona -Os -fomit-frame-pointer2014042920140425
11396opt64gcc -funroll-loops -O3 -fomit-frame-pointer2014042920140425
11408opt64gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014042920140425
11420opt64gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014042920140425
11464opt64gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014042920140425
11468opt64gcc -funroll-loops -O2 -fomit-frame-pointer2014042920140425
11472opt64gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014042920140425
11504asm64gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014042920140425
11504asm64gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014042920140425
11520asm64gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014042920140425
11524asm64gcc -funroll-loops -Os -fomit-frame-pointer2014042920140425
11528asm64gcc -funroll-loops -m64 -Os -fomit-frame-pointer2014042920140425
11528asm64gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014042920140425
11536asm64gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014042920140425
11536opt64gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014042920140425
11540asm64gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014042920140425
11540opt64gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014042920140425
11544asm64gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014042920140425
11564opt64gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014042920140425
11576opt64gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014042920140425
11576opt64gcc -m64 -march=core-avx-i -O -fomit-frame-pointer2014042920140425
11592opt64gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014042920140425
11596opt64gcc -fno-schedule-insns -O -fomit-frame-pointer2014042920140425
11600opt64gcc -m64 -march=nocona -O -fomit-frame-pointer2014042920140425
11604opt64gcc -O -fomit-frame-pointer2014042920140425
11604opt64gcc -m64 -march=corei7-avx -O -fomit-frame-pointer2014042920140425
11604opt64gcc -m64 -march=corei7 -O -fomit-frame-pointer2014042920140425
11608opt64gcc -m64 -march=core2 -O -fomit-frame-pointer2014042920140425
11608opt64gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014042920140425
11608opt64gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014042920140425
11612opt64gcc -march=nocona -O -fomit-frame-pointer2014042920140425
11624opt64gcc -m64 -O -fomit-frame-pointer2014042920140425
11700opt64gcc -m64 -march=nocona -O3 -fomit-frame-pointer2014042920140425
11716opt64gcc -march=nocona -O3 -fomit-frame-pointer2014042920140425
11792opt64gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014042920140425
11800opt64gcc -O3 -fomit-frame-pointer2014042920140425
11800opt64gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014042920140425
11804opt64gcc -m64 -march=core2 -O3 -fomit-frame-pointer2014042920140425
11812opt64gcc -m64 -O3 -fomit-frame-pointer2014042920140425
11816opt64gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2014042920140425
11828opt64gcc -fno-schedule-insns -O3 -fomit-frame-pointer2014042920140425
11828opt64gcc -m64 -march=corei7 -O3 -fomit-frame-pointer2014042920140425
11840opt64gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2014042920140425
11844opt64gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014042920140425
11876opt64gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014042920140425
11892opt64gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014042920140425
11896opt64gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014042920140425
11908opt64gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014042920140425
11916opt64gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014042920140425
11924opt64gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014042920140425
11924opt64gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014042920140425
11944opt64gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014042920140425
11956opt64gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014042920140425
11964opt64gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014042920140425
11964opt64gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014042920140425
12016opt64gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014042920140425
12080opt64gcc -march=nocona -O2 -fomit-frame-pointer2014042920140425
12112opt64gcc -m64 -march=nocona -O2 -fomit-frame-pointer2014042920140425
12184asm64gcc2014042920140425
12188asm64gcc -funroll-loops2014042920140425
12188opt64gcc -m64 -O2 -fomit-frame-pointer2014042920140425
12196asm64cc2014042920140425
12212opt64gcc -O2 -fomit-frame-pointer2014042920140425
12224opt64gcc -m64 -march=core2 -O2 -fomit-frame-pointer2014042920140425
12232opt64gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014042920140425
12240opt64gcc -march=barcelona -O3 -fomit-frame-pointer2014042920140425
12240opt64gcc -march=k8 -O3 -fomit-frame-pointer2014042920140425
12244opt64gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014042920140425
12244opt64gcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014042920140425
12248opt64gcc -m64 -march=k8 -O3 -fomit-frame-pointer2014042920140425
12256opt64gcc -fno-schedule-insns -O2 -fomit-frame-pointer2014042920140425
12256opt64gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014042920140425
12256opt64gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014042920140425
12276opt64gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2014042920140425
12304opt64gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2014042920140425
12432opt64gcc -march=barcelona -O -fomit-frame-pointer2014042920140425
12440opt64gcc -m64 -march=barcelona -O -fomit-frame-pointer2014042920140425
12488opt64gcc -m64 -march=k8 -O -fomit-frame-pointer2014042920140425
12492opt64gcc -march=k8 -O -fomit-frame-pointer2014042920140425
12620opt64gcc -funroll-loops -m64 -Os -fomit-frame-pointer2014042920140425
12620opt64gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014042920140425
12636opt64gcc -funroll-loops -Os -fomit-frame-pointer2014042920140425
12648opt64gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014042920140425
12652opt64gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014042920140425
12660opt64gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014042920140425
12676opt64gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014042920140425
12692opt64gcc -march=barcelona -O2 -fomit-frame-pointer2014042920140425
12692opt64gcc -march=k8 -O2 -fomit-frame-pointer2014042920140425
12712opt64gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014042920140425
12720opt64gcc -m64 -march=k8 -O2 -fomit-frame-pointer2014042920140425
12844opt64gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014042920140425
12856opt64gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014042920140425
13100opt64gcc -m64 -march=nocona -Os -fomit-frame-pointer2014042920140425
13136opt64gcc -march=nocona -Os -fomit-frame-pointer2014042920140425
13216opt64gcc -m64 -Os -fomit-frame-pointer2014042920140425
13228opt64gcc -m64 -march=k8 -Os -fomit-frame-pointer2014042920140425
13228opt64gcc -march=k8 -Os -fomit-frame-pointer2014042920140425
13232opt64gcc -Os -fomit-frame-pointer2014042920140425
13232opt64gcc -march=barcelona -Os -fomit-frame-pointer2014042920140425
13236opt64gcc -fno-schedule-insns -Os -fomit-frame-pointer2014042920140425
13240opt64gcc -m64 -march=barcelona -Os -fomit-frame-pointer2014042920140425
13260opt64gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014042920140425
13264opt64gcc -m64 -march=corei7 -Os -fomit-frame-pointer2014042920140425
13280opt64gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2014042920140425
13280opt64gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014042920140425
13284opt64gcc -m64 -march=core2 -Os -fomit-frame-pointer2014042920140425
13284opt64gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2014042920140425
13288opt64gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014042920140425
27432opt64cc2014042920140425
27440opt64gcc2014042920140425
27440opt64gcc -funroll-loops2014042920140425

Test failure

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

Number of similar (compiler,implementation) pairs: 34, 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=core-avx-i -O2 -fomit-frame-pointer asm64
gcc -m64 -march=core-avx-i -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-avx -O2 -fomit-frame-pointer asm64
gcc -m64 -march=corei7-avx -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 -m64 -march=native -mtune=native -O2 -fomit-frame-pointer asm64
gcc -m64 -march=native -mtune=native -O3 -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 is nondeterministic

Number of similar (compiler,implementation) pairs: 5, 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
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer asm64
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer asm64