Implementation notes: x86, margaux, crypto_hash/whirlpool

Computer: margaux
Architecture: x86
CPU ID: GenuineIntel-000006fb-bfebfbff
SUPERCOP version: 20171218
Operation: crypto_hash
Primitive: whirlpool
TimeImplementationCompilerBenchmark dateSUPERCOP version
134928refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2017072820170725
135198refgcc -funroll-loops -m32 -O -fomit-frame-pointer2017072820170725
135468refgcc -m32 -march=core2 -O -fomit-frame-pointer2017072820170725
135513refgcc -m32 -march=barcelona -O -fomit-frame-pointer2017072820170725
135513refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2017072820170725
135531refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2017072820170725
135603refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2017072820170725
135603refgcc -m32 -march=k8 -O -fomit-frame-pointer2017072820170725
135621refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2017072820170725
135675refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2017072820170725
135720refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2017072820170725
135720refgcc -m32 -O -fomit-frame-pointer2017072820170725
135729refgcc -m32 -march=corei7 -O -fomit-frame-pointer2017072820170725
135738refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2017072820170725
136125refgcc -m32 -march=prescott -O -fomit-frame-pointer2017072820170725
136179refgcc -m32 -march=athlon -O -fomit-frame-pointer2017072820170725
136206refgcc -m32 -march=i386 -O -fomit-frame-pointer2017072820170725
136467refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2017072820170725
136467refgcc -m32 -march=nocona -O -fomit-frame-pointer2017072820170725
136674refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2017072820170725
136692refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2017072820170725
136773refgcc -m32 -march=pentium -O -fomit-frame-pointer2017072820170725
136800refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2017072820170725
137232refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2017072820170725
137295refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2017072820170725
137313refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2017072820170725
137439refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2017072820170725
138096refgcc -m32 -march=i486 -O -fomit-frame-pointer2017072820170725
138321refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2017072820170725
138978refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2017072820170725
139014refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2017072820170725
139230refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2017072820170725
139257refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2017072820170725
139941refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2017072820170725
140382refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2017072820170725
140472refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2017072820170725
140553refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2017072820170725
142137refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2017072820170725
142281refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2017072820170725
142587refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2017072820170725
142821refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2017072820170725
142983refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2017072820170725
143037refgcc -m32 -march=k6 -O -fomit-frame-pointer2017072820170725
173151refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2017072820170725
173610refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2017072820170725
174330refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2017072820170725
175455refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2017072820170725
176571refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2017072820170725
176733refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2017072820170725
176823refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2017072820170725
177003refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2017072820170725
177030refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2017072820170725
177255refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2017072820170725
178407refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2017072820170725
179631refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2017072820170725
179811refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2017072820170725
181503refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2017072820170725
212841refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2017072820170725
213192refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2017072820170725
214974refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017072820170725
215136refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2017072820170725
215226refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2017072820170725
215559refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2017072820170725
215577refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017072820170725
218034refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2017072820170725
219645refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2017072820170725
219726refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2017072820170725
219843refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2017072820170725
219843refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2017072820170725
220698refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2017072820170725
220770refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2017072820170725
220932refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2017072820170725
221013refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2017072820170725
221220refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2017072820170725
221274refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2017072820170725
222327refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2017072820170725
222462refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017072820170725
222723refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2017072820170725
222831refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2017072820170725
223074refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2017072820170725
223227refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2017072820170725
223398refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017072820170725
223407refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2017072820170725
223434refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2017072820170725
223551refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2017072820170725
223551refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2017072820170725
223821refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2017072820170725
224487refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2017072820170725
224982refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2017072820170725
225054refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2017072820170725
225396refgcc -m32 -march=k6 -Os -fomit-frame-pointer2017072820170725
225549refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2017072820170725
225657refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2017072820170725
225792refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017072820170725
226170refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2017072820170725
226350refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2017072820170725
226395refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017072820170725
226458refgcc -m32 -march=core2 -Os -fomit-frame-pointer2017072820170725
226467refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2017072820170725
226503refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2017072820170725
226503refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2017072820170725
226548refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2017072820170725
226611refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2017072820170725
226746refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2017072820170725
226755refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2017072820170725
226818refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2017072820170725
227025refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2017072820170725
227052refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2017072820170725
227385refgcc -m32 -Os -fomit-frame-pointer2017072820170725
227592refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2017072820170725
227592refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2017072820170725
228690refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2017072820170725
228816refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2017072820170725
229032refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2017072820170725
229167refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2017072820170725
229311refgcc -m32 -march=athlon -Os -fomit-frame-pointer2017072820170725
229311refgcc -m32 -march=k8 -Os -fomit-frame-pointer2017072820170725
229653refgcc -m32 -O3 -fomit-frame-pointer2017072820170725
229680refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2017072820170725
229878refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2017072820170725
229887refgcc -m32 -O2 -fomit-frame-pointer2017072820170725
229914refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2017072820170725
230085refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2017072820170725
230454refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2017072820170725
230616refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2017072820170725
230643refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2017072820170725
230760refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2017072820170725
230823refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2017072820170725
230913refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2017072820170725
230958refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017072820170725
230976refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2017072820170725
230985refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2017072820170725
231201refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2017072820170725
231840refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017072820170725
231894refgcc -m32 -march=pentium -Os -fomit-frame-pointer2017072820170725
235692refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2017072820170725
235818refgcc -m32 -march=i386 -Os -fomit-frame-pointer2017072820170725
235917refgcc -m32 -march=prescott -Os -fomit-frame-pointer2017072820170725
235962refgcc -m32 -march=i486 -Os -fomit-frame-pointer2017072820170725
236007refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2017072820170725
236124refgcc -m32 -march=nocona -Os -fomit-frame-pointer2017072820170725
236340refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2017072820170725
236502refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2017072820170725
236502refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2017072820170725
236565refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2017072820170725
236853refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2017072820170725
237105refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2017072820170725
237447refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2017072820170725
238689refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2017072820170725
239076refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2017072820170725
239328refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2017072820170725
241092refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2017072820170725
241227refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017072820170725
241317refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017072820170725
241587refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2017072820170725
241614refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2017072820170725
241623refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2017072820170725
241785refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2017072820170725
241794refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2017072820170725
242352refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2017072820170725
242379refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2017072820170725
242604refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2017072820170725
242730refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2017072820170725
244350refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2017072820170725
244512refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2017072820170725
244629refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017072820170725
244701refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017072820170725

Test failure

Implementation: crypto_hash/whirlpool/ref
Compiler: gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m32 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer ref