Implementation notes: amd64, nalla, crypto_hash/simd512

Computer: nalla
Architecture: amd64
CPU ID: GenuineIntel-000006fb-bfebfbff
SUPERCOP version: 20100728
Operation: crypto_hash
Primitive: simd512
TimeImplementationCompilerBenchmark dateSUPERCOP version
21150vect128gcc -funroll-loops -m64 -Os -fomit-frame-pointer2010080320100728
21222vect128gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2010080320100728
21318vect128gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2010080320100728
21348vect128gcc -funroll-loops -Os -fomit-frame-pointer2010080320100728
21402vect128gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2010080320100728
21456vect128gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2010080320100728
21528vect128gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2010080320100728
21594vect128gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2010080320100728
21612vect128gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2010080320100728
21630vect128gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2010080320100728
21792vect128gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2010080320100728
21798vect128gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2010080320100728
21816vect128gcc -funroll-loops -O2 -fomit-frame-pointer2010080320100728
21864vect128gcc -funroll-loops -O3 -fomit-frame-pointer2010080320100728
21894vect128gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2010080320100728
21924vect128gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2010080320100728
22002vect128gcc -march=k8 -O3 -fomit-frame-pointer2010080320100728
22008vect128gcc -m64 -march=k8 -O3 -fomit-frame-pointer2010080320100728
22068vect128gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2010080320100728
22074vect128gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2010080320100728
22086vect128gcc -m64 -march=nocona -O3 -fomit-frame-pointer2010080320100728
22098vect128gcc -march=nocona -O3 -fomit-frame-pointer2010080320100728
22122vect128gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2010080320100728
22164vect128gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2010080320100728
22170vect128gcc -fno-schedule-insns -O3 -fomit-frame-pointer2010080320100728
22278vect128gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2010080320100728
22278vect128gcc -m64 -march=nocona -O2 -fomit-frame-pointer2010080320100728
22302vect128gcc -O3 -fomit-frame-pointer2010080320100728
22308vect128gcc -m64 -O3 -fomit-frame-pointer2010080320100728
22368vect128gcc -m64 -O2 -fomit-frame-pointer2010080320100728
22374vect128gcc -Os -fomit-frame-pointer2010080320100728
22392vect128gcc -fno-schedule-insns -Os -fomit-frame-pointer2010080320100728
22404vect128gcc -m64 -march=k8 -Os -fomit-frame-pointer2010080320100728
22404vect128gcc -march=nocona -Os -fomit-frame-pointer2010080320100728
22410vect128gcc -m64 -march=k8 -O2 -fomit-frame-pointer2010080320100728
22416vect128gcc -march=k8 -Os -fomit-frame-pointer2010080320100728
22422vect128gcc -O2 -fomit-frame-pointer2010080320100728
22476vect128gcc -m64 -march=core2 -O3 -fomit-frame-pointer2010080320100728
22506vect128gcc -m64 -march=nocona -Os -fomit-frame-pointer2010080320100728
22524vect128gcc -fno-schedule-insns -O2 -fomit-frame-pointer2010080320100728
22536vect128gcc -march=nocona -O2 -fomit-frame-pointer2010080320100728
22572vect128gcc -m64 -Os -fomit-frame-pointer2010080320100728
22674vect128gcc -m64 -march=core2 -O2 -fomit-frame-pointer2010080320100728
23682vect128gcc -m64 -march=core2 -Os -fomit-frame-pointer2010080320100728
25260vect128gcc -march=k8 -O2 -fomit-frame-pointer2010080320100728
115200optgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2010080320100728
115314optgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2010080320100728
118866optgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2010080320100728
118938optgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2010080320100728
118944optgcc -funroll-loops -O2 -fomit-frame-pointer2010080320100728
127086optgcc -fno-schedule-insns -O2 -fomit-frame-pointer2010080320100728
127302optgcc -m64 -O2 -fomit-frame-pointer2010080320100728
127488optgcc -m64 -march=core2 -O2 -fomit-frame-pointer2010080320100728
127518optgcc -O2 -fomit-frame-pointer2010080320100728
128160optgcc -m64 -march=k8 -O2 -fomit-frame-pointer2010080320100728
128190optgcc -march=k8 -O2 -fomit-frame-pointer2010080320100728
137820optgcc -funroll-loops -m64 -Os -fomit-frame-pointer2010080320100728
138000optgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2010080320100728
138012optgcc -funroll-loops -Os -fomit-frame-pointer2010080320100728
138102optgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2010080320100728
138150optgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2010080320100728
138192optgcc -m64 -march=k8 -O3 -fomit-frame-pointer2010080320100728
138294optgcc -march=k8 -O3 -fomit-frame-pointer2010080320100728
138960optgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2010080320100728
139134optgcc -funroll-loops -O3 -fomit-frame-pointer2010080320100728
139272optgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2010080320100728
139284optgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2010080320100728
139596optgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2010080320100728
139644optgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2010080320100728
139722optgcc -funroll-loops -O -fomit-frame-pointer2010080320100728
139902optgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2010080320100728
140076optgcc -funroll-loops -m64 -O -fomit-frame-pointer2010080320100728
142914optgcc -m64 -march=core2 -O3 -fomit-frame-pointer2010080320100728
143388optgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2010080320100728
145566optgcc -O3 -fomit-frame-pointer2010080320100728
146118optgcc -fno-schedule-insns -O3 -fomit-frame-pointer2010080320100728
146232optgcc -m64 -O3 -fomit-frame-pointer2010080320100728
151956optgcc -m64 -march=core2 -Os -fomit-frame-pointer2010080320100728
152112optgcc -fno-schedule-insns -Os -fomit-frame-pointer2010080320100728
152130optgcc -Os -fomit-frame-pointer2010080320100728
152148optgcc -m64 -Os -fomit-frame-pointer2010080320100728
152154optgcc -m64 -march=k8 -Os -fomit-frame-pointer2010080320100728
152196optgcc -march=k8 -Os -fomit-frame-pointer2010080320100728
153906optgcc -O -fomit-frame-pointer2010080320100728
153936optgcc -m64 -march=k8 -O -fomit-frame-pointer2010080320100728
154170optgcc -m64 -march=core2 -O -fomit-frame-pointer2010080320100728
154200optgcc -fno-schedule-insns -O -fomit-frame-pointer2010080320100728
154440optgcc -m64 -O -fomit-frame-pointer2010080320100728
154452optgcc -march=k8 -O -fomit-frame-pointer2010080320100728
165096optgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2010080320100728
165210optgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2010080320100728
179766optgcc -march=nocona -O2 -fomit-frame-pointer2010080320100728
180084optgcc -m64 -march=nocona -O2 -fomit-frame-pointer2010080320100728
193758optgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2010080320100728
194142optgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2010080320100728
194772optgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2010080320100728
194856optgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2010080320100728
198126optgcc -march=nocona -O3 -fomit-frame-pointer2010080320100728
198288optgcc -m64 -march=nocona -O3 -fomit-frame-pointer2010080320100728
204186optgcc -m64 -march=nocona -Os -fomit-frame-pointer2010080320100728
204444optgcc -march=nocona -Os -fomit-frame-pointer2010080320100728
205830optgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2010080320100728
206478optgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2010080320100728
208434optgcc -m64 -march=nocona -O -fomit-frame-pointer2010080320100728
211080optgcc -march=nocona -O -fomit-frame-pointer2010080320100728
859494optgcc -funroll-loops2010080320100728
861168optcc2010080320100728
863346optgcc2010080320100728
8391384refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2010080320100728
8392452refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2010080320100728
8392860refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2010080320100728
8392950refgcc -funroll-loops -O2 -fomit-frame-pointer2010080320100728
8395356refgcc -funroll-loops -O3 -fomit-frame-pointer2010080320100728
8395986refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2010080320100728
8398302refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2010080320100728
8398872refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2010080320100728
8399400refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2010080320100728
8413956refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2010080320100728
8616864refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2010080320100728
8617788refgcc -funroll-loops -O -fomit-frame-pointer2010080320100728
8617836refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2010080320100728
8622162refgcc -funroll-loops -m64 -O -fomit-frame-pointer2010080320100728
8627436refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2010080320100728
9279528refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2010080320100728
9281220refgcc -march=k8 -O3 -fomit-frame-pointer2010080320100728
9281322refgcc -march=k8 -O2 -fomit-frame-pointer2010080320100728
9313344refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2010080320100728
9418896refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2010080320100728
9421548refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2010080320100728
9584112refgcc -O3 -fomit-frame-pointer2010080320100728
9584142refgcc -m64 -O3 -fomit-frame-pointer2010080320100728
9586068refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2010080320100728
9586398refgcc -O2 -fomit-frame-pointer2010080320100728
9586446refgcc -m64 -O2 -fomit-frame-pointer2010080320100728
9587616refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2010080320100728
9668292refgcc -m64 -march=k8 -O -fomit-frame-pointer2010080320100728
9668526refgcc -march=k8 -O -fomit-frame-pointer2010080320100728
9755364refgcc -fno-schedule-insns -O -fomit-frame-pointer2010080320100728
9755832refgcc -m64 -march=core2 -O -fomit-frame-pointer2010080320100728
9761880refgcc -m64 -O -fomit-frame-pointer2010080320100728
9775752refgcc -O -fomit-frame-pointer2010080320100728
10997118refgcc -m64 -Os -fomit-frame-pointer2010080320100728
11003160refgcc -march=nocona -Os -fomit-frame-pointer2010080320100728
11006082refgcc -m64 -march=nocona -Os -fomit-frame-pointer2010080320100728
11021748refgcc -Os -fomit-frame-pointer2010080320100728
11026890refgcc -fno-schedule-insns -Os -fomit-frame-pointer2010080320100728
11063454refgcc -m64 -march=core2 -Os -fomit-frame-pointer2010080320100728
11076264refgcc -m64 -march=k8 -Os -fomit-frame-pointer2010080320100728
11076540refgcc -march=k8 -Os -fomit-frame-pointer2010080320100728
11218830refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2010080320100728
11224326refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2010080320100728
11330958refgcc -funroll-loops -Os -fomit-frame-pointer2010080320100728
11343438refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2010080320100728
11343840refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2010080320100728
11346858refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2010080320100728
11349852refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2010080320100728
12387894refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2010080320100728
12420768refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2010080320100728
12421050refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2010080320100728
12421740refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2010080320100728
12846588refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2010080320100728
12848304refgcc -march=nocona -O3 -fomit-frame-pointer2010080320100728
12913362refgcc -march=nocona -O2 -fomit-frame-pointer2010080320100728
12913584refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2010080320100728
13000746refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2010080320100728
13033842refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2010080320100728
13387248refgcc -march=nocona -O -fomit-frame-pointer2010080320100728
13388694refgcc -m64 -march=nocona -O -fomit-frame-pointer2010080320100728
14879202refgcc2010080320100728
14896242refgcc -funroll-loops2010080320100728
14902992refcc2010080320100728

Compiler output

Implementation: crypto_hash/simd512/vect128
Compiler: cc
vector.c: vector.c: In function 'fft64':
vector.c: vector.c:104: error: shift must be an immediate
vector.c: vector.c:105: error: shift must be an immediate
vector.c: vector.c:106: error: shift must be an immediate
vector.c: vector.c:113: error: shift must be an immediate
vector.c: vector.c:114: error: shift must be an immediate
vector.c: vector.c:218: error: shift must be an immediate
vector.c: vector.c:219: error: shift must be an immediate
vector.c: vector.c:224: error: shift must be an immediate
vector.c: vector.c:225: error: shift must be an immediate
vector.c: vector.c:226: error: shift must be an immediate
vector.c: vector.c:659:1: warning: "STEP_1" redefined
vector.c: vector.c:479:1: warning: this is the location of the previous definition
vector.c: vector.c:668:1: warning: "STEP_2" redefined
vector.c: vector.c:503:1: warning: this is the location of the previous definition
vector.c: vector.c:671:1: warning: "STEP" redefined
vector.c: vector.c:508:1: warning: this is the location of the previous definition
vector.c: vector.c:692:1: warning: "ROUND" redefined
vector.c: vector.c:516:1: warning: this is the location of the previous definition

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
cc vect128
gcc vect128
gcc -funroll-loops vect128

Compiler output

Implementation: crypto_hash/simd512/vect128
Compiler: gcc -O2 -fomit-frame-pointer
vector.c: vector.c:659:1: warning: "STEP_1" redefined
vector.c: vector.c:479:1: warning: this is the location of the previous definition
vector.c: vector.c:668:1: warning: "STEP_2" redefined
vector.c: vector.c:503:1: warning: this is the location of the previous definition
vector.c: vector.c:671:1: warning: "STEP" redefined
vector.c: vector.c:508:1: warning: this is the location of the previous definition
vector.c: vector.c:692:1: warning: "ROUND" redefined
vector.c: vector.c:516:1: warning: this is the location of the previous definition

Number of similar (compiler,implementation) pairs: 45, namely:
CompilerImplementations
gcc -O2 -fomit-frame-pointer vect128
gcc -O3 -fomit-frame-pointer vect128
gcc -Os -fomit-frame-pointer vect128
gcc -fno-schedule-insns -O2 -fomit-frame-pointer vect128
gcc -fno-schedule-insns -O3 -fomit-frame-pointer vect128
gcc -fno-schedule-insns -Os -fomit-frame-pointer vect128
gcc -funroll-loops -O2 -fomit-frame-pointer vect128
gcc -funroll-loops -O3 -fomit-frame-pointer vect128
gcc -funroll-loops -Os -fomit-frame-pointer vect128
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer vect128
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer vect128
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer vect128
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer vect128
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer vect128
gcc -funroll-loops -m64 -Os -fomit-frame-pointer vect128
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer vect128
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer vect128
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer vect128
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer vect128
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer vect128
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer vect128
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer vect128
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer vect128
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer vect128
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer vect128
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer vect128
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer vect128
gcc -m64 -O2 -fomit-frame-pointer vect128
gcc -m64 -O3 -fomit-frame-pointer vect128
gcc -m64 -Os -fomit-frame-pointer vect128
gcc -m64 -march=core2 -O2 -fomit-frame-pointer vect128
gcc -m64 -march=core2 -O3 -fomit-frame-pointer vect128
gcc -m64 -march=core2 -Os -fomit-frame-pointer vect128
gcc -m64 -march=k8 -O2 -fomit-frame-pointer vect128
gcc -m64 -march=k8 -O3 -fomit-frame-pointer vect128
gcc -m64 -march=k8 -Os -fomit-frame-pointer vect128
gcc -m64 -march=nocona -O2 -fomit-frame-pointer vect128
gcc -m64 -march=nocona -O3 -fomit-frame-pointer vect128
gcc -m64 -march=nocona -Os -fomit-frame-pointer vect128
gcc -march=k8 -O2 -fomit-frame-pointer vect128
gcc -march=k8 -O3 -fomit-frame-pointer vect128
gcc -march=k8 -Os -fomit-frame-pointer vect128
gcc -march=nocona -O2 -fomit-frame-pointer vect128
gcc -march=nocona -O3 -fomit-frame-pointer vect128
gcc -march=nocona -Os -fomit-frame-pointer vect128

Compiler output

Implementation: crypto_hash/simd512/vect128
Compiler: gcc -O -fomit-frame-pointer
vector.c: vector.c:659:1: warning: "STEP_1" redefined
vector.c: vector.c:479:1: warning: this is the location of the previous definition
vector.c: vector.c:668:1: warning: "STEP_2" redefined
vector.c: vector.c:503:1: warning: this is the location of the previous definition
vector.c: vector.c:671:1: warning: "STEP" redefined
vector.c: vector.c:508:1: warning: this is the location of the previous definition
vector.c: vector.c:692:1: warning: "ROUND" redefined
vector.c: vector.c:516:1: warning: this is the location of the previous definition
vector.c: vector.c: In function 'fft64':
vector.c: vector.c:104: error: shift must be an immediate
vector.c: vector.c:105: error: shift must be an immediate
vector.c: vector.c:106: error: shift must be an immediate
vector.c: vector.c:113: error: shift must be an immediate
vector.c: vector.c:114: error: shift must be an immediate
vector.c: vector.c:218: error: shift must be an immediate
vector.c: vector.c:219: error: shift must be an immediate
vector.c: vector.c:224: error: shift must be an immediate
vector.c: vector.c:225: error: shift must be an immediate
vector.c: vector.c:226: error: shift must be an immediate

Number of similar (compiler,implementation) pairs: 15, namely:
CompilerImplementations
gcc -O -fomit-frame-pointer vect128
gcc -fno-schedule-insns -O -fomit-frame-pointer vect128
gcc -funroll-loops -O -fomit-frame-pointer vect128
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer vect128
gcc -funroll-loops -m64 -O -fomit-frame-pointer vect128
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer vect128
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer vect128
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer vect128
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer vect128
gcc -m64 -O -fomit-frame-pointer vect128
gcc -m64 -march=core2 -O -fomit-frame-pointer vect128
gcc -m64 -march=k8 -O -fomit-frame-pointer vect128
gcc -m64 -march=nocona -O -fomit-frame-pointer vect128
gcc -march=k8 -O -fomit-frame-pointer vect128
gcc -march=nocona -O -fomit-frame-pointer vect128