Implementation notes: x86, cryptothinkx, crypto_sign/mqqsig160

Computer: cryptothinkx
Architecture: x86
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20170105
Operation: crypto_sign
Primitive: mqqsig160
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
114780? ? ?? ? ?refgcc_-m32_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017021520170105
118302? ? ?? ? ?refgcc_-m32_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017021520170105
119319? ? ?? ? ?refgcc_-m32_-march=corei7-avx_-Os_-fomit-frame-pointer2017021520170105
119385? ? ?? ? ?refgcc_-m32_-march=core-avx-i_-Os_-fomit-frame-pointer2017021520170105
120186? ? ?? ? ?refgcc_-m32_-march=core2_-Os_-fomit-frame-pointer2017021520170105
122553? ? ?? ? ?refgcc_-m32_-march=core-avx2_-Os_-fomit-frame-pointer2017021520170105
123330? ? ?? ? ?refgcc_-m32_-march=corei7_-Os_-fomit-frame-pointer2017021520170105
136581? ? ?? ? ?refgcc_-m32_-march=core2_-msse4_-Os_-fomit-frame-pointer2017021520170105
138840? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=prescott_-O3_-fomit-frame-pointer2017021520170105
140166? ? ?? ? ?refgcc_-m32_-march=prescott_-O3_-fomit-frame-pointer2017021520170105
141354? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=prescott_-O_-fomit-frame-pointer2017021520170105
142851? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=nocona_-O3_-fomit-frame-pointer2017021520170105
144516? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium4_-O2_-fomit-frame-pointer2017021520170105
144723? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-m_-O2_-fomit-frame-pointer2017021520170105
144780? ? ?? ? ?refgcc_-m32_-march=nocona_-O3_-fomit-frame-pointer2017021520170105
147351? ? ?? ? ?refgcc_-m32_-march=pentiumpro_-O3_-fomit-frame-pointer2017021520170105
147447? ? ?? ? ?refgcc_-m32_-march=pentium3_-O3_-fomit-frame-pointer2017021520170105
147747? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentiumpro_-O3_-fomit-frame-pointer2017021520170105
148182? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium3_-O3_-fomit-frame-pointer2017021520170105
148875? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium3_-O2_-fomit-frame-pointer2017021520170105
149220? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium2_-O2_-fomit-frame-pointer2017021520170105
151725? ? ?? ? ?refgcc_-m32_-march=pentium-m_-O3_-fomit-frame-pointer2017021520170105
152391? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-m_-O3_-fomit-frame-pointer2017021520170105
152697? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium4_-O3_-fomit-frame-pointer2017021520170105
153000? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=prescott_-O2_-fomit-frame-pointer2017021520170105
153573? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-m_-O_-fomit-frame-pointer2017021520170105
153588? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium2_-O_-fomit-frame-pointer2017021520170105
153603? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium3_-O_-fomit-frame-pointer2017021520170105
155313? ? ?? ? ?refgcc_-m32_-march=pentium4_-O3_-fomit-frame-pointer2017021520170105
155688? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=nocona_-O_-fomit-frame-pointer2017021520170105
157968? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=nocona_-O2_-fomit-frame-pointer2017021520170105
158730? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium4_-O_-fomit-frame-pointer2017021520170105
159966? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentiumpro_-O_-fomit-frame-pointer2017021520170105
162465? ? ?? ? ?refgcc_-m32_-march=pentium2_-O3_-fomit-frame-pointer2017021520170105
163326? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium2_-O3_-fomit-frame-pointer2017021520170105
164511? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i386_-O2_-fomit-frame-pointer2017021520170105
164613? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentiumpro_-O2_-fomit-frame-pointer2017021520170105
176616? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i386_-O3_-fomit-frame-pointer2017021520170105
180207? ? ?? ? ?refgcc_-m32_-march=pentium4_-O2_-fomit-frame-pointer2017021520170105
184074? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i386_-O_-fomit-frame-pointer2017021520170105
191439? ? ?? ? ?refgcc_-m32_-march=pentiumpro_-O2_-fomit-frame-pointer2017021520170105
191502? ? ?? ? ?refgcc_-m32_-march=nocona_-O_-fomit-frame-pointer2017021520170105
197274? ? ?? ? ?refgcc_-m32_-march=prescott_-O_-fomit-frame-pointer2017021520170105
198672? ? ?? ? ?refgcc_-m32_-march=prescott_-O2_-fomit-frame-pointer2017021520170105
200070? ? ?? ? ?refgcc_-m32_-march=pentiumpro_-O_-fomit-frame-pointer2017021520170105
200556? ? ?? ? ?refgcc_-m32_-march=i386_-O3_-fomit-frame-pointer2017021520170105
202053? ? ?? ? ?refgcc_-m32_-march=pentium4_-O_-fomit-frame-pointer2017021520170105
203463? ? ?? ? ?refgcc_-m32_-march=pentium3_-O2_-fomit-frame-pointer2017021520170105
204609? ? ?? ? ?refgcc_-m32_-march=i386_-O2_-fomit-frame-pointer2017021520170105
204867? ? ?? ? ?refgcc_-m32_-march=i386_-O_-fomit-frame-pointer2017021520170105
205242? ? ?? ? ?refgcc_-m32_-march=pentium2_-O2_-fomit-frame-pointer2017021520170105
207861? ? ?? ? ?refgcc_-m32_-march=pentium2_-O_-fomit-frame-pointer2017021520170105
207978? ? ?? ? ?refgcc_-m32_-march=nocona_-O2_-fomit-frame-pointer2017021520170105
209769? ? ?? ? ?refgcc_-m32_-march=pentium-m_-O_-fomit-frame-pointer2017021520170105
210141? ? ?? ? ?refgcc_-m32_-march=pentium-m_-O2_-fomit-frame-pointer2017021520170105
211161? ? ?? ? ?refgcc_-m32_-march=pentium-mmx_-Os_-fomit-frame-pointer2017021520170105
213519? ? ?? ? ?refgcc_-m32_-march=pentium3_-O_-fomit-frame-pointer2017021520170105
213522? ? ?? ? ?refgcc_-m32_-march=k8_-Os_-fomit-frame-pointer2017021520170105
213699? ? ?? ? ?refgcc_-m32_-march=pentium3_-Os_-fomit-frame-pointer2017021520170105
215082? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=athlon_-Os_-fomit-frame-pointer2017021520170105
218919? ? ?? ? ?refgcc_-m32_-march=i486_-Os_-fomit-frame-pointer2017021520170105
220158? ? ?? ? ?refgcc_-m32_-march=pentium4_-Os_-fomit-frame-pointer2017021520170105
221211? ? ?? ? ?refgcc_-m32_-march=prescott_-Os_-fomit-frame-pointer2017021520170105
221244? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium_-Os_-fomit-frame-pointer2017021520170105
222534? ? ?? ? ?refgcc_-m32_-march=k6-3_-Os_-fomit-frame-pointer2017021520170105
222696? ? ?? ? ?refgcc_-m32_-march=k6-2_-Os_-fomit-frame-pointer2017021520170105
223038? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=nocona_-Os_-fomit-frame-pointer2017021520170105
224553? ? ?? ? ?refgcc_-m32_-march=i386_-Os_-fomit-frame-pointer2017021520170105
226017? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-m_-Os_-fomit-frame-pointer2017021520170105
226326? ? ?? ? ?refgcc_-m32_-march=barcelona_-Os_-fomit-frame-pointer2017021520170105
226872? ? ?? ? ?refgcc_-m32_-march=barcelona_-Os_-fomit-frame-pointer2017021520170105
227037? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i486_-Os_-fomit-frame-pointer2017021520170105
228114? ? ?? ? ?refgcc_-m32_-march=pentiumpro_-Os_-fomit-frame-pointer2017021520170105
228720? ? ?? ? ?refgcc_-m32_-march=pentium2_-Os_-fomit-frame-pointer2017021520170105
229236? ? ?? ? ?refgcc_-funroll-loops_-m32_-Os_-fomit-frame-pointer2017021520170105
229476? ? ?? ? ?refgcc_-m32_-march=k6_-Os_-fomit-frame-pointer2017021520170105
229551? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=prescott_-Os_-fomit-frame-pointer2017021520170105
230235? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k8_-Os_-fomit-frame-pointer2017021520170105
230544? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=barcelona_-Os_-fomit-frame-pointer2017021520170105
231921? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-3_-Os_-fomit-frame-pointer2017021520170105
233124? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentiumpro_-Os_-fomit-frame-pointer2017021520170105
234435? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium2_-Os_-fomit-frame-pointer2017021520170105
234741? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-mmx_-Os_-fomit-frame-pointer2017021520170105
235581? ? ?? ? ?refgcc_-m32_-march=nocona_-Os_-fomit-frame-pointer2017021520170105
236967? ? ?? ? ?refgcc_-m32_-Os_-fomit-frame-pointer2017021520170105
237651? ? ?? ? ?refgcc_-m32_-march=athlon_-Os_-fomit-frame-pointer2017021520170105
239544? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-2_-Os_-fomit-frame-pointer2017021520170105
242637? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium3_-Os_-fomit-frame-pointer2017021520170105
247698? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6_-Os_-fomit-frame-pointer2017021520170105
251391? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i386_-Os_-fomit-frame-pointer2017021520170105
254877? ? ?? ? ?refgcc_-m32_-march=pentium-m_-Os_-fomit-frame-pointer2017021520170105
262568? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium4_-Os_-fomit-frame-pointer2017021520170105
269264? ? ?? ? ?refgcc_-m32_-march=pentium_-Os_-fomit-frame-pointer2017021520170105

Test failure

Implementation: crypto_sign/mqqsig160/ref
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
error 111
crypto_sign_open does not handle c=t overlap

Number of similar (compiler,implementation) pairs: 81, namely:
CompilerImplementations
gcc -funroll-loops -m32 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer ref
gcc -m32 -O2 -fomit-frame-pointer ref
gcc -m32 -O3 -fomit-frame-pointer ref
gcc -m32 -O -fomit-frame-pointer ref
gcc -m32 -march=athlon -O2 -fomit-frame-pointer ref
gcc -m32 -march=athlon -O3 -fomit-frame-pointer ref
gcc -m32 -march=athlon -O -fomit-frame-pointer ref
gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer ref
gcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer ref
gcc -m32 -march=core-avx-i -O -fomit-frame-pointer ref
gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer ref
gcc -m32 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m32 -march=core2 -O2 -fomit-frame-pointer ref
gcc -m32 -march=core2 -O3 -fomit-frame-pointer ref
gcc -m32 -march=core2 -O -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer ref
gcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer ref
gcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer ref
gcc -m32 -march=corei7-avx -O -fomit-frame-pointer ref
gcc -m32 -march=corei7 -O2 -fomit-frame-pointer ref
gcc -m32 -march=corei7 -O3 -fomit-frame-pointer ref
gcc -m32 -march=corei7 -O -fomit-frame-pointer ref
gcc -m32 -march=i486 -O2 -fomit-frame-pointer ref
gcc -m32 -march=i486 -O3 -fomit-frame-pointer ref
gcc -m32 -march=i486 -O -fomit-frame-pointer ref
gcc -m32 -march=k6-2 -O2 -fomit-frame-pointer ref
gcc -m32 -march=k6-2 -O3 -fomit-frame-pointer ref
gcc -m32 -march=k6-2 -O -fomit-frame-pointer ref
gcc -m32 -march=k6-3 -O2 -fomit-frame-pointer ref
gcc -m32 -march=k6-3 -O3 -fomit-frame-pointer ref
gcc -m32 -march=k6-3 -O -fomit-frame-pointer ref
gcc -m32 -march=k6 -O2 -fomit-frame-pointer ref
gcc -m32 -march=k6 -O3 -fomit-frame-pointer ref
gcc -m32 -march=k6 -O -fomit-frame-pointer ref
gcc -m32 -march=k8 -O2 -fomit-frame-pointer ref
gcc -m32 -march=k8 -O3 -fomit-frame-pointer ref
gcc -m32 -march=k8 -O -fomit-frame-pointer ref
gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer ref
gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer ref
gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer ref
gcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer ref
gcc -m32 -march=pentium-mmx -O -fomit-frame-pointer ref
gcc -m32 -march=pentium -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium -O3 -fomit-frame-pointer ref
gcc -m32 -march=pentium -O -fomit-frame-pointer ref

Test failure

Implementation: crypto_sign/mqqsig160/ref
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
error 111
crypto_sign_open does not handle c=t overlap
error 111
crypto_sign_open does not handle c=t overlap

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