Implementation notes: amd64, hlopt03, crypto_hash/simd512

Computer: hlopt03
Architecture: amd64
CPU ID: AuthenticAMD-00100f23-178bfbff
SUPERCOP version: 20100509
Operation: crypto_hash
Primitive: simd512
TimeImplementationCompilerBenchmark dateSUPERCOP version
24913vect128gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2010060220100509
24927vect128gcc -funroll-loops -Os -fomit-frame-pointer2010060220100509
24960vect128gcc -funroll-loops -m64 -Os -fomit-frame-pointer2010060220100509
24998vect128gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2010060220100509
25031vect128gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2010060220100509
25527vect128gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2010060220100509
25549vect128gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2010060220100509
25577vect128gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2010060220100509
25582vect128gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2010060220100509
25631vect128gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2010060220100509
25648vect128gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2010060220100509
25666vect128gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2010060220100509
25686vect128gcc -funroll-loops -O3 -fomit-frame-pointer2010060220100509
25709vect128gcc -funroll-loops -O2 -fomit-frame-pointer2010060220100509
25830vect128gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2010060220100509
26365vect128gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2010060220100509
26439vect128gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2010060220100509
26550vect128gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2010060220100509
26591vect128gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2010060220100509
26598vect128gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2010060220100509
26666vect128gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2010060220100509
26779vect128gcc -march=nocona -O3 -fomit-frame-pointer2010060220100509
26789vect128gcc -m64 -march=nocona -O3 -fomit-frame-pointer2010060220100509
26798vect128gcc -march=k8 -O3 -fomit-frame-pointer2010060220100509
26812vect128gcc -O3 -fomit-frame-pointer2010060220100509
26818vect128gcc -m64 -O3 -fomit-frame-pointer2010060220100509
26886vect128gcc -march=nocona -O2 -fomit-frame-pointer2010060220100509
26920vect128gcc -m64 -march=k8 -O3 -fomit-frame-pointer2010060220100509
26935vect128gcc -m64 -march=core2 -O2 -fomit-frame-pointer2010060220100509
26979vect128gcc -m64 -O2 -fomit-frame-pointer2010060220100509
27040vect128gcc -fno-schedule-insns -O3 -fomit-frame-pointer2010060220100509
27047vect128gcc -fno-schedule-insns -O2 -fomit-frame-pointer2010060220100509
27063vect128gcc -m64 -march=core2 -O3 -fomit-frame-pointer2010060220100509
27075vect128gcc -m64 -march=nocona -Os -fomit-frame-pointer2010060220100509
27123vect128gcc -O2 -fomit-frame-pointer2010060220100509
27151vect128gcc -m64 -march=k8 -O2 -fomit-frame-pointer2010060220100509
27174vect128gcc -m64 -Os -fomit-frame-pointer2010060220100509
27176vect128gcc -m64 -march=k8 -Os -fomit-frame-pointer2010060220100509
27200vect128gcc -march=k8 -O2 -fomit-frame-pointer2010060220100509
27204vect128gcc -march=nocona -Os -fomit-frame-pointer2010060220100509
27233vect128gcc -fno-schedule-insns -Os -fomit-frame-pointer2010060220100509
27257vect128gcc -march=k8 -Os -fomit-frame-pointer2010060220100509
27317vect128gcc -m64 -march=nocona -O2 -fomit-frame-pointer2010060220100509
27361vect128gcc -Os -fomit-frame-pointer2010060220100509
27476vect128gcc -m64 -march=core2 -Os -fomit-frame-pointer2010060220100509
122083optgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2010060220100509
122156optgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2010060220100509
122451optgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2010060220100509
122503optgcc -funroll-loops -O2 -fomit-frame-pointer2010060220100509
123191optgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2010060220100509
138013optgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2010060220100509
138039optgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2010060220100509
138483optgcc -funroll-loops -Os -fomit-frame-pointer2010060220100509
139168optgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2010060220100509
139600optgcc -funroll-loops -m64 -Os -fomit-frame-pointer2010060220100509
141354optgcc -m64 -O2 -fomit-frame-pointer2010060220100509
141645optgcc -m64 -march=core2 -O2 -fomit-frame-pointer2010060220100509
142466optgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2010060220100509
142661optgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2010060220100509
142881optgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2010060220100509
142895optgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2010060220100509
142922optgcc -O2 -fomit-frame-pointer2010060220100509
143038optgcc -fno-schedule-insns -O2 -fomit-frame-pointer2010060220100509
143409optgcc -funroll-loops -O3 -fomit-frame-pointer2010060220100509
145795optgcc -m64 -march=k8 -O2 -fomit-frame-pointer2010060220100509
146528optgcc -march=k8 -O2 -fomit-frame-pointer2010060220100509
148474optgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2010060220100509
148945optgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2010060220100509
152418optgcc -m64 -march=core2 -O3 -fomit-frame-pointer2010060220100509
154535optgcc -m64 -O3 -fomit-frame-pointer2010060220100509
154541optgcc -O3 -fomit-frame-pointer2010060220100509
154860optgcc -fno-schedule-insns -O3 -fomit-frame-pointer2010060220100509
157116optgcc -funroll-loops -m64 -O -fomit-frame-pointer2010060220100509
157366optgcc -funroll-loops -O -fomit-frame-pointer2010060220100509
157441optgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2010060220100509
157780optgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2010060220100509
158229optgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2010060220100509
159439optgcc -m64 -march=k8 -O3 -fomit-frame-pointer2010060220100509
159843optgcc -march=k8 -O3 -fomit-frame-pointer2010060220100509
162767optgcc -m64 -Os -fomit-frame-pointer2010060220100509
163047optgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2010060220100509
163083optgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2010060220100509
163159optgcc -m64 -march=k8 -Os -fomit-frame-pointer2010060220100509
163217optgcc -Os -fomit-frame-pointer2010060220100509
163370optgcc -march=k8 -Os -fomit-frame-pointer2010060220100509
163513optgcc -fno-schedule-insns -Os -fomit-frame-pointer2010060220100509
164608optgcc -march=nocona -O2 -fomit-frame-pointer2010060220100509
164681optgcc -m64 -march=nocona -O2 -fomit-frame-pointer2010060220100509
166462optgcc -m64 -march=core2 -Os -fomit-frame-pointer2010060220100509
178048optgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2010060220100509
178679optgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2010060220100509
179374optgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2010060220100509
179550optgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2010060220100509
179607optgcc -O -fomit-frame-pointer2010060220100509
180052optgcc -m64 -O -fomit-frame-pointer2010060220100509
180292optgcc -fno-schedule-insns -O -fomit-frame-pointer2010060220100509
180292optgcc -m64 -march=core2 -O -fomit-frame-pointer2010060220100509
181042optgcc -m64 -march=nocona -O3 -fomit-frame-pointer2010060220100509
181114optgcc -march=nocona -O3 -fomit-frame-pointer2010060220100509
184379optgcc -march=k8 -O -fomit-frame-pointer2010060220100509
184413optgcc -m64 -march=k8 -O -fomit-frame-pointer2010060220100509
194657optgcc -march=nocona -O -fomit-frame-pointer2010060220100509
195139optgcc -m64 -march=nocona -O -fomit-frame-pointer2010060220100509
199701optgcc -m64 -march=nocona -Os -fomit-frame-pointer2010060220100509
199903optgcc -march=nocona -Os -fomit-frame-pointer2010060220100509
1059672optgcc2010060220100509
1060564optgcc -funroll-loops2010060220100509
1062036optcc2010060220100509
7430398refgcc -funroll-loops -O -fomit-frame-pointer2010060220100509
7430636refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2010060220100509
7432088refgcc -funroll-loops -m64 -O -fomit-frame-pointer2010060220100509
7444009refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2010060220100509
7445719refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2010060220100509
8047398refgcc -m64 -O2 -fomit-frame-pointer2010060220100509
8048548refgcc -O2 -fomit-frame-pointer2010060220100509
8048797refgcc -O3 -fomit-frame-pointer2010060220100509
8049085refgcc -m64 -O3 -fomit-frame-pointer2010060220100509
8050076refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2010060220100509
8051736refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2010060220100509
8056565refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2010060220100509
8060449refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2010060220100509
8422291refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2010060220100509
8423964refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2010060220100509
8424665refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2010060220100509
8425600refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2010060220100509
8426694refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2010060220100509
8427187refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2010060220100509
8427353refgcc -funroll-loops -O3 -fomit-frame-pointer2010060220100509
8428106refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2010060220100509
8428478refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2010060220100509
8428650refgcc -funroll-loops -O2 -fomit-frame-pointer2010060220100509
8476321refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2010060220100509
8477006refgcc -march=k8 -O3 -fomit-frame-pointer2010060220100509
8477845refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2010060220100509
8478868refgcc -march=k8 -O2 -fomit-frame-pointer2010060220100509
8527786refgcc -m64 -O -fomit-frame-pointer2010060220100509
8528662refgcc -O -fomit-frame-pointer2010060220100509
8531384refgcc -fno-schedule-insns -O -fomit-frame-pointer2010060220100509
8531692refgcc -m64 -march=core2 -O -fomit-frame-pointer2010060220100509
8939704refgcc -march=k8 -O -fomit-frame-pointer2010060220100509
8941112refgcc -m64 -march=k8 -O -fomit-frame-pointer2010060220100509
11942470refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2010060220100509
11944317refgcc -march=nocona -O2 -fomit-frame-pointer2010060220100509
11948217refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2010060220100509
11952538refgcc -march=nocona -O3 -fomit-frame-pointer2010060220100509
12111011refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2010060220100509
12112650refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2010060220100509
12113140refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2010060220100509
12113860refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2010060220100509
13209015refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2010060220100509
13210631refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2010060220100509
14104742refgcc -m64 -march=nocona -O -fomit-frame-pointer2010060220100509
14106358refgcc -march=nocona -O -fomit-frame-pointer2010060220100509
15026260refgcc -funroll-loops2010060220100509
15032384refgcc2010060220100509
15080390refcc2010060220100509
34564618refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2010060220100509
34574957refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2010060220100509
34677451refgcc -funroll-loops -Os -fomit-frame-pointer2010060220100509
34677789refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2010060220100509
34678660refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2010060220100509
36247167refgcc -m64 -march=nocona -Os -fomit-frame-pointer2010060220100509
36268973refgcc -march=nocona -Os -fomit-frame-pointer2010060220100509
36317115refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2010060220100509
36328833refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2010060220100509
36630708refgcc -march=k8 -Os -fomit-frame-pointer2010060220100509
36632917refgcc -m64 -Os -fomit-frame-pointer2010060220100509
36633111refgcc -Os -fomit-frame-pointer2010060220100509
36636230refgcc -m64 -march=k8 -Os -fomit-frame-pointer2010060220100509
36636275refgcc -fno-schedule-insns -Os -fomit-frame-pointer2010060220100509
36645007refgcc -m64 -march=core2 -Os -fomit-frame-pointer2010060220100509

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