Implementation notes: x86, katana, crypto_sign/mqqsig160

Computer: katana
Architecture: x86
CPU ID: GenuineIntel-000006f6-bfebfbff
SUPERCOP version: 20170105
Operation: crypto_sign
Primitive: mqqsig160
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
224144? ? ?? ? ?refgcc_-m32_-march=native_-mtune=native_-O2_-fomit-frame-pointer2016103020161009
224208? ? ?? ? ?refgcc_-m32_-march=core2_-O2_-fomit-frame-pointer2016103020161009
224256? ? ?? ? ?refgcc_-m32_-march=core2_-O3_-fomit-frame-pointer2016103020161009
231648? ? ?? ? ?refgcc_-m32_-march=native_-mtune=native_-O3_-fomit-frame-pointer2016103020161009
236296? ? ?? ? ?refgcc_-m32_-march=core2_-O_-fomit-frame-pointer2016103020161009
236720? ? ?? ? ?refgcc_-m32_-march=native_-mtune=native_-O_-fomit-frame-pointer2016103020161009
258216? ? ?? ? ?refgcc_-m32_-march=native_-mtune=native_-Os_-fomit-frame-pointer2016103020161009
265328? ? ?? ? ?refgcc_-m32_-march=core2_-Os_-fomit-frame-pointer2016103020161009
281264? ? ?? ? ?refgcc_-funroll-loops_-m32_-O3_-fomit-frame-pointer2016103020161009
281600? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=athlon_-O2_-fomit-frame-pointer2016103020161009
283088? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=athlon_-O3_-fomit-frame-pointer2016103020161009
284904? ? ?? ? ?refgcc_-funroll-loops_-m32_-O2_-fomit-frame-pointer2016103020161009
285040? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=nocona_-O3_-fomit-frame-pointer2016103020161009
287448? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=prescott_-O3_-fomit-frame-pointer2016103020161009
287656? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=prescott_-O_-fomit-frame-pointer2016103020161009
289768? ? ?? ? ?refgcc_-funroll-loops_-m32_-O_-fomit-frame-pointer2016103020161009
289928? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-m_-O2_-fomit-frame-pointer2016103020161009
290256? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium2_-O3_-fomit-frame-pointer2016103020161009
290336? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentiumpro_-O3_-fomit-frame-pointer2016103020161009
290384? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-m_-O3_-fomit-frame-pointer2016103020161009
290552? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=prescott_-O2_-fomit-frame-pointer2016103020161009
290808? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium2_-O2_-fomit-frame-pointer2016103020161009
291048? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=nocona_-O_-fomit-frame-pointer2016103020161009
291824? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=nocona_-O2_-fomit-frame-pointer2016103020161009
291952? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium3_-O3_-fomit-frame-pointer2016103020161009
292000? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-mmx_-O_-fomit-frame-pointer2016103020161009
292568? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium_-O_-fomit-frame-pointer2016103020161009
293008? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium3_-O2_-fomit-frame-pointer2016103020161009
293768? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium4_-O2_-fomit-frame-pointer2016103020161009
293816? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-3_-O_-fomit-frame-pointer2016103020161009
293992? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-2_-O_-fomit-frame-pointer2016103020161009
294432? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=athlon_-O_-fomit-frame-pointer2016103020161009
294712? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentiumpro_-O2_-fomit-frame-pointer2016103020161009
294912? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6_-O_-fomit-frame-pointer2016103020161009
295112? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-2_-O3_-fomit-frame-pointer2016103020161009
295576? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i386_-O2_-fomit-frame-pointer2016103020161009
295704? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-3_-O3_-fomit-frame-pointer2016103020161009
295832? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i386_-O_-fomit-frame-pointer2016103020161009
296096? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium4_-O_-fomit-frame-pointer2016103020161009
299120? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-3_-O2_-fomit-frame-pointer2016103020161009
299224? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentiumpro_-O_-fomit-frame-pointer2016103020161009
299392? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6_-O3_-fomit-frame-pointer2016103020161009
299896? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium4_-O3_-fomit-frame-pointer2016103020161009
300008? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-mmx_-O3_-fomit-frame-pointer2016103020161009
300368? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-2_-O2_-fomit-frame-pointer2016103020161009
300448? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium_-O3_-fomit-frame-pointer2016103020161009
300464? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium2_-O_-fomit-frame-pointer2016103020161009
301056? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6_-O2_-fomit-frame-pointer2016103020161009
301336? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-m_-O_-fomit-frame-pointer2016103020161009
302960? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium3_-O_-fomit-frame-pointer2016103020161009
304504? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium_-O2_-fomit-frame-pointer2016103020161009
304784? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-mmx_-O2_-fomit-frame-pointer2016103020161009
312032? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i386_-O3_-fomit-frame-pointer2016103020161009
312040? ? ?? ? ?refgcc_-m32_-march=athlon_-O3_-fomit-frame-pointer2016103020161009
319416? ? ?? ? ?refgcc_-m32_-march=nocona_-O3_-fomit-frame-pointer2016103020161009
319424? ? ?? ? ?refgcc_-m32_-march=prescott_-O3_-fomit-frame-pointer2016103020161009
319720? ? ?? ? ?refgcc_-m32_-O3_-fomit-frame-pointer2016103020161009
321776? ? ?? ? ?refgcc_-m32_-march=pentium4_-O3_-fomit-frame-pointer2016103020161009
322392? ? ?? ? ?refgcc_-m32_-march=pentium3_-O3_-fomit-frame-pointer2016103020161009
322632? ? ?? ? ?refgcc_-m32_-march=pentium2_-O3_-fomit-frame-pointer2016103020161009
323168? ? ?? ? ?refgcc_-m32_-march=i386_-O3_-fomit-frame-pointer2016103020161009
323168? ? ?? ? ?refgcc_-m32_-march=pentium-m_-O3_-fomit-frame-pointer2016103020161009
323680? ? ?? ? ?refgcc_-m32_-march=pentiumpro_-O3_-fomit-frame-pointer2016103020161009
324328? ? ?? ? ?refgcc_-m32_-march=k6_-O3_-fomit-frame-pointer2016103020161009
324544? ? ?? ? ?refgcc_-m32_-march=k6-2_-O3_-fomit-frame-pointer2016103020161009
324944? ? ?? ? ?refgcc_-m32_-march=k6-3_-O3_-fomit-frame-pointer2016103020161009
338520? ? ?? ? ?refgcc_-m32_-march=pentium-mmx_-O3_-fomit-frame-pointer2016103020161009
338848? ? ?? ? ?refgcc_-m32_-march=pentium_-O3_-fomit-frame-pointer2016103020161009
348064? ? ?? ? ?refgcc_-m32_-march=athlon_-O2_-fomit-frame-pointer2016103020161009
349960? ? ?? ? ?refgcc_-m32_-O2_-fomit-frame-pointer2016103020161009
351192? ? ?? ? ?refgcc_-m32_-march=i386_-O2_-fomit-frame-pointer2016103020161009
359032? ? ?? ? ?refgcc_-m32_-march=pentium4_-O2_-fomit-frame-pointer2016103020161009
361640? ? ?? ? ?refgcc_-m32_-march=prescott_-O2_-fomit-frame-pointer2016103020161009
362360? ? ?? ? ?refgcc_-m32_-march=nocona_-O2_-fomit-frame-pointer2016103020161009
363832? ? ?? ? ?refgcc_-m32_-march=pentium_-O2_-fomit-frame-pointer2016103020161009
364056? ? ?? ? ?refgcc_-m32_-march=pentium-mmx_-O2_-fomit-frame-pointer2016103020161009
364160? ? ?? ? ?refgcc_-m32_-march=pentium2_-O2_-fomit-frame-pointer2016103020161009
364184? ? ?? ? ?refgcc_-m32_-march=pentiumpro_-O2_-fomit-frame-pointer2016103020161009
364872? ? ?? ? ?refgcc_-m32_-march=pentium-m_-O2_-fomit-frame-pointer2016103020161009
372000? ? ?? ? ?refgcc_-m32_-march=pentium3_-O2_-fomit-frame-pointer2016103020161009
375456? ? ?? ? ?refgcc_-m32_-march=athlon_-O_-fomit-frame-pointer2016103020161009
379176? ? ?? ? ?refgcc_-m32_-march=nocona_-O_-fomit-frame-pointer2016103020161009
379576? ? ?? ? ?refgcc_-m32_-march=prescott_-O_-fomit-frame-pointer2016103020161009
380840? ? ?? ? ?refgcc_-m32_-march=pentium4_-O_-fomit-frame-pointer2016103020161009
382736? ? ?? ? ?refgcc_-m32_-march=k6-2_-O2_-fomit-frame-pointer2016103020161009
383720? ? ?? ? ?refgcc_-m32_-march=k6-3_-O2_-fomit-frame-pointer2016103020161009
383792? ? ?? ? ?refgcc_-m32_-march=k6_-O2_-fomit-frame-pointer2016103020161009
384320? ? ?? ? ?refgcc_-m32_-march=pentiumpro_-O_-fomit-frame-pointer2016103020161009
384528? ? ?? ? ?refgcc_-m32_-march=pentium2_-O_-fomit-frame-pointer2016103020161009
386464? ? ?? ? ?refgcc_-m32_-march=i386_-O_-fomit-frame-pointer2016103020161009
387152? ? ?? ? ?refgcc_-m32_-march=k6_-O_-fomit-frame-pointer2016103020161009
387608? ? ?? ? ?refgcc_-m32_-march=k6-2_-O_-fomit-frame-pointer2016103020161009
388000? ? ?? ? ?refgcc_-m32_-march=k6-3_-O_-fomit-frame-pointer2016103020161009
391040? ? ?? ? ?refgcc_-m32_-march=pentium-mmx_-O_-fomit-frame-pointer2016103020161009
391304? ? ?? ? ?refgcc_-m32_-march=pentium_-O_-fomit-frame-pointer2016103020161009
402408? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-m_-Os_-fomit-frame-pointer2016103020161009
404080? ? ?? ? ?refgcc_-m32_-O_-fomit-frame-pointer2016103020161009
406632? ? ?? ? ?refgcc_-m32_-march=pentium3_-O_-fomit-frame-pointer2016103020161009
413016? ? ?? ? ?refgcc_-m32_-march=k6_-Os_-fomit-frame-pointer2016103020161009
413104? ? ?? ? ?refgcc_-m32_-march=k6-2_-Os_-fomit-frame-pointer2016103020161009
413392? ? ?? ? ?refgcc_-m32_-march=k6-3_-Os_-fomit-frame-pointer2016103020161009
414464? ? ?? ? ?refgcc_-m32_-march=pentium-m_-O_-fomit-frame-pointer2016103020161009
414800? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium3_-Os_-fomit-frame-pointer2016103020161009
417776? ? ?? ? ?refgcc_-m32_-march=pentium2_-Os_-fomit-frame-pointer2016103020161009
417792? ? ?? ? ?refgcc_-m32_-march=pentiumpro_-Os_-fomit-frame-pointer2016103020161009
421016? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-2_-Os_-fomit-frame-pointer2016103020161009
421160? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6-3_-Os_-fomit-frame-pointer2016103020161009
421336? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k6_-Os_-fomit-frame-pointer2016103020161009
427368? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i486_-Os_-fomit-frame-pointer2016103020161009
427704? ? ?? ? ?refgcc_-m32_-march=pentium3_-Os_-fomit-frame-pointer2016103020161009
428016? ? ?? ? ?refgcc_-funroll-loops_-m32_-Os_-fomit-frame-pointer2016103020161009
429792? ? ?? ? ?refgcc_-m32_-march=pentium-m_-Os_-fomit-frame-pointer2016103020161009
431392? ? ?? ? ?refgcc_-m32_-march=i486_-Os_-fomit-frame-pointer2016103020161009
431600? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium-mmx_-Os_-fomit-frame-pointer2016103020161009
431904? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=i386_-Os_-fomit-frame-pointer2016103020161009
433144? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium_-Os_-fomit-frame-pointer2016103020161009
433864? ? ?? ? ?refgcc_-m32_-march=i386_-Os_-fomit-frame-pointer2016103020161009
435520? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=athlon_-Os_-fomit-frame-pointer2016103020161009
437144? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium2_-Os_-fomit-frame-pointer2016103020161009
437568? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentiumpro_-Os_-fomit-frame-pointer2016103020161009
438792? ? ?? ? ?refgcc_-m32_-march=pentium_-Os_-fomit-frame-pointer2016103020161009
438976? ? ?? ? ?refgcc_-m32_-march=pentium-mmx_-Os_-fomit-frame-pointer2016103020161009
455024? ? ?? ? ?refgcc_-m32_-march=nocona_-Os_-fomit-frame-pointer2016103020161009
455040? ? ?? ? ?refgcc_-m32_-march=pentium4_-Os_-fomit-frame-pointer2016103020161009
455336? ? ?? ? ?refgcc_-m32_-march=prescott_-Os_-fomit-frame-pointer2016103020161009
461584? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=prescott_-Os_-fomit-frame-pointer2016103020161009
462032? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=k8_-Os_-fomit-frame-pointer2016103020161009
462064? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=pentium4_-Os_-fomit-frame-pointer2016103020161009
462208? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=nocona_-Os_-fomit-frame-pointer2016103020161009
462328? ? ?? ? ?refgcc_-funroll-loops_-m32_-march=barcelona_-Os_-fomit-frame-pointer2016103020161009
463160? ? ?? ? ?refgcc_-m32_-march=athlon_-Os_-fomit-frame-pointer2016103020161009
463488? ? ?? ? ?refgcc_-m32_-Os_-fomit-frame-pointer2016103020161009
464280? ? ?? ? ?refgcc_-m32_-march=barcelona_-Os_-fomit-frame-pointer2016103020161009
464816? ? ?? ? ?refgcc_-m32_-march=k8_-Os_-fomit-frame-pointer2016103020161009

Test failure

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

Number of similar (compiler,implementation) pairs: 15, namely:
CompilerImplementations
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=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 -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=k8 -O2 -fomit-frame-pointer ref
gcc -m32 -march=k8 -O3 -fomit-frame-pointer ref
gcc -m32 -march=k8 -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

Test failure

Implementation: crypto_sign/mqqsig160/ref
Compiler: gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 18, namely:
CompilerImplementations
gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer ref
gcc -m32 -march=core-avx-i -O -fomit-frame-pointer ref
gcc -m32 -march=core-avx-i -Os -fomit-frame-pointer ref
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
gcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer ref
gcc -m32 -march=corei7-avx -O -fomit-frame-pointer ref
gcc -m32 -march=corei7-avx -Os -fomit-frame-pointer ref
gcc -m32 -march=corei7 -O2 -fomit-frame-pointer ref
gcc -m32 -march=corei7 -O -fomit-frame-pointer ref
gcc -m32 -march=corei7 -Os -fomit-frame-pointer ref