Implementation notes: x86, samba, crypto_kem

Computer: samba
Architecture: x86
CPU ID: GenuineIntel-000506e3-bfebfbff
CPU cycles/second: 3000000000...3500000000 (x86cpuinfo)
SUPERCOP version: 20190110
Benchmark dates: 20170829...20190112

crypto_kem

TimeRelative timePrimitiveImplementationCompiler
6805461.00babybearcrypto_kem/babybear/vecgcc -m32 -march=barcelona -O3 -fomit-frame-pointer (5.4.0 20160609)
7028751.03babybearcrypto_kem/babybear/optgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer
8025771.18babybearcrypto_kem/babybear/lowmemgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer
20677883.04babybearcrypto_kem/babybear/refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer
3468051.00babybearephemcrypto_kem/babybearephem/vecgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer (5.4.0 20160609)
3612991.04babybearephemcrypto_kem/babybearephem/optgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer
4114601.19babybearephemcrypto_kem/babybearephem/lowmemgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer
9268472.67babybearephemcrypto_kem/babybearephem/refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer
153442581.00bigquake1crypto_kem/bigquake1/refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer (5.4.0 20160609)
565574901.00bigquake3crypto_kem/bigquake3/refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer (5.4.0 20160609)
801321941.00bigquake5crypto_kem/bigquake5/refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer (5.4.0 20160609)
bike1l1nccrypto_kem/bike1l1nc/ref_osslgcc -m32 -O3 -fomit-frame-pointer
bike1l1sccrypto_kem/bike1l1sc/ref_osslgcc -m32 -O3 -fomit-frame-pointer
bike2l1nccrypto_kem/bike2l1nc/ref_osslgcc -m32 -O3 -fomit-frame-pointer
bike2l1sccrypto_kem/bike2l1sc/ref_osslgcc -m32 -O3 -fomit-frame-pointer
bike3l1nccrypto_kem/bike3l1nc/ref_osslgcc -m32 -O3 -fomit-frame-pointer
bike3l1sccrypto_kem/bike3l1sc/ref_osslgcc -m32 -O3 -fomit-frame-pointer
dags3crypto_kem/dags3/refgcc -m32 -O3 -fomit-frame-pointer
7103044771.00dags3v2crypto_kem/dags3v2/refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer (5.4.0 20160609)
dags5crypto_kem/dags5/refgcc -m32 -O3 -fomit-frame-pointer
7399548181.00dags5v2crypto_kem/dags5v2/refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer (5.4.0 20160609)
edonk128k08n72nu8l8crypto_kem/edonk128k08n72nu8l8/refgcc -m32 -O3 -fomit-frame-pointer
edonk128k16n80nu4l6crypto_kem/edonk128k16n80nu4l6/refgcc -m32 -O3 -fomit-frame-pointer
edonk128k16n80nu8l6crypto_kem/edonk128k16n80nu8l6/refgcc -m32 -O3 -fomit-frame-pointer
edonk128k32n96nu4l4crypto_kem/edonk128k32n96nu4l4/refgcc -m32 -O3 -fomit-frame-pointer
edonk128refcrypto_kem/edonk128ref/refgcc -m32 -O3 -fomit-frame-pointer
edonk192k16n112nu4l8crypto_kem/edonk192k16n112nu4l8/refgcc -m32 -O3 -fomit-frame-pointer
edonk192k32n128nu4l6crypto_kem/edonk192k32n128nu4l6/refgcc -m32 -O3 -fomit-frame-pointer
edonk192k48n144nu4l4crypto_kem/edonk192k48n144nu4l4/refgcc -m32 -O3 -fomit-frame-pointer
edonk192refcrypto_kem/edonk192ref/refgcc -m32 -O3 -fomit-frame-pointer
11381231.00firesabercrypto_kem/firesaber/portablegcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer (5.4.0 20160609)
11447891.01firesabercrypto_kem/firesaber/refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer (5.4.0 20160609)
frodokem640crypto_kem/frodokem640/optimizedgcc -m32 -O3 -fomit-frame-pointer
frodokem640crypto_kem/frodokem640/referencegcc -m32 -O3 -fomit-frame-pointer
frodokem640crypto_kem/frodokem640/x64gcc -m32 -O3 -fomit-frame-pointer
frodokem976crypto_kem/frodokem976/optimizedgcc -m32 -O3 -fomit-frame-pointer
frodokem976crypto_kem/frodokem976/referencegcc -m32 -O3 -fomit-frame-pointer
frodokem976crypto_kem/frodokem976/x64gcc -m32 -O3 -fomit-frame-pointer
7326071.00hila5crypto_kem/hila5/optgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer (5.4.0 20160609)
3401303046.43hila5crypto_kem/hila5/refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer
hila5crypto_kem/hila5/avx2gcc -m32 -O3 -fomit-frame-pointer
16982481.00kindi256342crypto_kem/kindi256342/refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer (5.4.0 20160609)
41429481.00kindi256522crypto_kem/kindi256522/refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer (5.4.0 20160609)
20824041.00kindi512222crypto_kem/kindi512222/refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer (5.4.0 20160609)
21344881.00kindi512241crypto_kem/kindi512241/refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer (5.4.0 20160609)
37276981.00kindi512321crypto_kem/kindi512321/refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer (5.4.0 20160609)
19510141.00kyber1024crypto_kem/kyber1024/refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer (5.4.0 20160609)
9145001.00kyber512crypto_kem/kyber512/refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer (5.4.0 20160609)
13577931.00kyber768crypto_kem/kyber768/refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer (5.4.0 20160609)
lac128crypto_kem/lac128/avx2gcc -m32 -O3 -fomit-frame-pointer
lac128crypto_kem/lac128/optgcc -m32 -O3 -fomit-frame-pointer
lac128crypto_kem/lac128/refgcc -m32 -O3 -fomit-frame-pointer
lac192crypto_kem/lac192/avx2gcc -m32 -O3 -fomit-frame-pointer
lac192crypto_kem/lac192/optgcc -m32 -O3 -fomit-frame-pointer
lac192crypto_kem/lac192/refgcc -m32 -O3 -fomit-frame-pointer
lac256crypto_kem/lac256/avx2gcc -m32 -O3 -fomit-frame-pointer
lac256crypto_kem/lac256/optgcc -m32 -O3 -fomit-frame-pointer
lac256crypto_kem/lac256/refgcc -m32 -O3 -fomit-frame-pointer
ledakem12crypto_kem/ledakem12/refgcc -m32 -O3 -fomit-frame-pointer
ledakem13crypto_kem/ledakem13/refgcc -m32 -O3 -fomit-frame-pointer
ledakem14crypto_kem/ledakem14/refgcc -m32 -O3 -fomit-frame-pointer
ledakem32crypto_kem/ledakem32/refgcc -m32 -O3 -fomit-frame-pointer
ledakem33crypto_kem/ledakem33/refgcc -m32 -O3 -fomit-frame-pointer
ledakem34crypto_kem/ledakem34/refgcc -m32 -O3 -fomit-frame-pointer
ledakem52crypto_kem/ledakem52/refgcc -m32 -O3 -fomit-frame-pointer
ledakem53crypto_kem/ledakem53/refgcc -m32 -O3 -fomit-frame-pointer
ledakem54crypto_kem/ledakem54/refgcc -m32 -O3 -fomit-frame-pointer
4197401.00lightsabercrypto_kem/lightsaber/portablegcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer (5.4.0 20160609)
4246151.01lightsabercrypto_kem/lightsaber/refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer (5.4.0 20160609)
lima2p1024ccacrypto_kem/lima2p1024cca/optgcc -m32 -O3 -fomit-frame-pointer
lima2p1024ccacrypto_kem/lima2p1024cca/refgcc -m32 -O3 -fomit-frame-pointer
lima2p2048ccacrypto_kem/lima2p2048cca/optgcc -m32 -O3 -fomit-frame-pointer
lima2p2048ccacrypto_kem/lima2p2048cca/refgcc -m32 -O3 -fomit-frame-pointer
limasp1018ccacrypto_kem/limasp1018cca/optgcc -m32 -O3 -fomit-frame-pointer
limasp1018ccacrypto_kem/limasp1018cca/refgcc -m32 -O3 -fomit-frame-pointer
limasp1306ccacrypto_kem/limasp1306cca/optgcc -m32 -O3 -fomit-frame-pointer
limasp1306ccacrypto_kem/limasp1306cca/refgcc -m32 -O3 -fomit-frame-pointer
limasp1822ccacrypto_kem/limasp1822cca/optgcc -m32 -O3 -fomit-frame-pointer
limasp1822ccacrypto_kem/limasp1822cca/refgcc -m32 -O3 -fomit-frame-pointer
limasp2062ccacrypto_kem/limasp2062cca/optgcc -m32 -O3 -fomit-frame-pointer
limasp2062ccacrypto_kem/limasp2062cca/refgcc -m32 -O3 -fomit-frame-pointer
lotus128crypto_kem/lotus128/avx2gcc -m32 -O3 -fomit-frame-pointer
lotus128crypto_kem/lotus128/optgcc -m32 -O3 -fomit-frame-pointer
lotus128crypto_kem/lotus128/refgcc -m32 -O3 -fomit-frame-pointer
lotus192crypto_kem/lotus192/avx2gcc -m32 -O3 -fomit-frame-pointer
lotus192crypto_kem/lotus192/optgcc -m32 -O3 -fomit-frame-pointer
lotus192crypto_kem/lotus192/refgcc -m32 -O3 -fomit-frame-pointer
lotus256crypto_kem/lotus256/avx2gcc -m32 -O3 -fomit-frame-pointer
lotus256crypto_kem/lotus256/optgcc -m32 -O3 -fomit-frame-pointer
lotus256crypto_kem/lotus256/refgcc -m32 -O3 -fomit-frame-pointer
11874401.00mamabearcrypto_kem/mamabear/vecgcc -m32 -march=prescott -O3 -fomit-frame-pointer (5.4.0 20160609)
12577401.06mamabearcrypto_kem/mamabear/optgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer
14458061.22mamabearcrypto_kem/mamabear/lowmemgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer
38047363.20mamabearcrypto_kem/mamabear/refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer
6166531.00mamabearephemcrypto_kem/mamabearephem/vecgcc -m32 -march=nocona -O3 -fomit-frame-pointer (5.4.0 20160609)
6458061.05mamabearephemcrypto_kem/mamabearephem/optgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer
7487741.21mamabearephemcrypto_kem/mamabearephem/lowmemgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer
15772272.56mamabearephemcrypto_kem/mamabearephem/refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer
4361135991.00mceliece6960119crypto_kem/mceliece6960119/refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer (5.4.0 20160609)
mceliece6960119crypto_kem/mceliece6960119/avxgcc -m32 -O3 -fomit-frame-pointer
mceliece6960119crypto_kem/mceliece6960119/ssegcc -m32 -O3 -fomit-frame-pointer
5475190431.00mceliece8192128crypto_kem/mceliece8192128/refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer (5.4.0 20160609)
mceliece8192128crypto_kem/mceliece8192128/avxgcc -m32 -O3 -fomit-frame-pointer
mceliece8192128crypto_kem/mceliece8192128/ssegcc -m32 -O3 -fomit-frame-pointer
mersenne756839crypto_kem/mersenne756839/optgcc -m32 -O3 -fomit-frame-pointer
mersenne756839crypto_kem/mersenne756839/refgcc -m32 -O3 -fomit-frame-pointer
16458731.00newhope1024ccacrypto_kem/newhope1024cca/refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer (5.4.0 20160609)
8359701.00newhope512ccacrypto_kem/newhope512cca/refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer (5.4.0 20160609)
26055201.00ntruhrss701crypto_kem/ntruhrss701/refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer (5.4.0 20160609)
6491511.00ntrukem443crypto_kem/ntrukem443/refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer (5.4.0 20160609)
11804761.00ntrukem743crypto_kem/ntrukem743/refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer (5.4.0 20160609)
ntrulpr4591761crypto_kem/ntrulpr4591761/avxgcc -m32 -O3 -fomit-frame-pointer
ntrulpr4591761crypto_kem/ntrulpr4591761/refgcc -m32 -O3 -fomit-frame-pointer
18300181.00ntskem1264crypto_kem/ntskem1264/optgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer (5.4.0 20160609)
ntskem1264crypto_kem/ntskem1264/avx2gcc -m32 -O3 -fomit-frame-pointer
ntskem1264crypto_kem/ntskem1264/refgcc -m32 -O3 -fomit-frame-pointer
ntskem1264crypto_kem/ntskem1264/sse2gcc -m32 -O3 -fomit-frame-pointer
79478981.00ntskem13136crypto_kem/ntskem13136/optgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer (5.4.0 20160609)
ntskem13136crypto_kem/ntskem13136/avx2gcc -m32 -O3 -fomit-frame-pointer
ntskem13136crypto_kem/ntskem13136/refgcc -m32 -O3 -fomit-frame-pointer
ntskem13136crypto_kem/ntskem13136/sse2gcc -m32 -O3 -fomit-frame-pointer
36032261.00ntskem1380crypto_kem/ntskem1380/optgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer (5.4.0 20160609)
ntskem1380crypto_kem/ntskem1380/avx2gcc -m32 -O3 -fomit-frame-pointer
ntskem1380crypto_kem/ntskem1380/refgcc -m32 -O3 -fomit-frame-pointer
ntskem1380crypto_kem/ntskem1380/sse2gcc -m32 -O3 -fomit-frame-pointer
oddmanhattan128crypto_kem/oddmanhattan128/optgcc -m32 -O3 -fomit-frame-pointer
oddmanhattan128crypto_kem/oddmanhattan128/refgcc -m32 -O3 -fomit-frame-pointer
oddmanhattan192crypto_kem/oddmanhattan192/optgcc -m32 -O3 -fomit-frame-pointer
oddmanhattan192crypto_kem/oddmanhattan192/refgcc -m32 -O3 -fomit-frame-pointer
oddmanhattan256crypto_kem/oddmanhattan256/optgcc -m32 -O3 -fomit-frame-pointer
oddmanhattan256crypto_kem/oddmanhattan256/refgcc -m32 -O3 -fomit-frame-pointer
18384551.00papabearcrypto_kem/papabear/vecgcc -m32 -march=prescott -O3 -fomit-frame-pointer (5.4.0 20160609)
19767671.08papabearcrypto_kem/papabear/optgcc -m32 -march=barcelona -O3 -fomit-frame-pointer
22779371.24papabearcrypto_kem/papabear/lowmemgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer
59823133.25papabearcrypto_kem/papabear/refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer
9421191.00papabearephemcrypto_kem/papabearephem/vecgcc -m32 -march=nocona -O2 -fomit-frame-pointer (5.4.0 20160609)
10016751.06papabearephemcrypto_kem/papabearephem/optgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer
11803121.25papabearephemcrypto_kem/papabearephem/lowmemgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer
23652782.51papabearephemcrypto_kem/papabearephem/refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer
pqrsa15crypto_kem/pqrsa15/refgcc -m32 -O3 -fomit-frame-pointer
ramstakers216091crypto_kem/ramstakers216091/refgcc -m32 -O3 -fomit-frame-pointer
ramstakers756839crypto_kem/ramstakers756839/refgcc -m32 -O3 -fomit-frame-pointer
remblem1056crypto_kem/remblem1056/refgcc -m32 -O3 -fomit-frame-pointer
remblem928crypto_kem/remblem928/refgcc -m32 -O3 -fomit-frame-pointer
rsa2048crypto_kem/rsa2048/gmpgcc -m32 -O3 -fomit-frame-pointer
7444661.00sabercrypto_kem/saber/refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer (5.4.0 20160609)
7449221.00sabercrypto_kem/saber/portablegcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer (5.4.0 20160609)
6744227591.00sikep503crypto_kem/sikep503/optgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer (5.4.0 20160609)
sikep503crypto_kem/sikep503/msgcc -m32 -O3 -fomit-frame-pointer
sikep503crypto_kem/sikep503/refgcc -m32 -O3 -fomit-frame-pointer
sikep503crypto_kem/sikep503/x64gcc -m32 -O3 -fomit-frame-pointer
415710301.00sntrup4591761crypto_kem/sntrup4591761/refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer (5.4.0 20160609)
sntrup4591761crypto_kem/sntrup4591761/avxgcc -m32 -O3 -fomit-frame-pointer
titaniumccahicrypto_kem/titaniumccahi/avx2gcc -m32 -O3 -fomit-frame-pointer
titaniumccahicrypto_kem/titaniumccahi/optgcc -m32 -O3 -fomit-frame-pointer
titaniumccahicrypto_kem/titaniumccahi/refgcc -m32 -O3 -fomit-frame-pointer
titaniumccalitecrypto_kem/titaniumccalite/avx2gcc -m32 -O3 -fomit-frame-pointer
titaniumccalitecrypto_kem/titaniumccalite/optgcc -m32 -O3 -fomit-frame-pointer
titaniumccalitecrypto_kem/titaniumccalite/refgcc -m32 -O3 -fomit-frame-pointer
titaniumccamedcrypto_kem/titaniumccamed/avx2gcc -m32 -O3 -fomit-frame-pointer
titaniumccamedcrypto_kem/titaniumccamed/optgcc -m32 -O3 -fomit-frame-pointer
titaniumccamedcrypto_kem/titaniumccamed/refgcc -m32 -O3 -fomit-frame-pointer
titaniumccastdcrypto_kem/titaniumccastd/avx2gcc -m32 -O3 -fomit-frame-pointer
titaniumccastdcrypto_kem/titaniumccastd/optgcc -m32 -O3 -fomit-frame-pointer
titaniumccastdcrypto_kem/titaniumccastd/refgcc -m32 -O3 -fomit-frame-pointer
titaniumccasupercrypto_kem/titaniumccasuper/avx2gcc -m32 -O3 -fomit-frame-pointer
titaniumccasupercrypto_kem/titaniumccasuper/optgcc -m32 -O3 -fomit-frame-pointer
titaniumccasupercrypto_kem/titaniumccasuper/refgcc -m32 -O3 -fomit-frame-pointer
titaniumccatoycrypto_kem/titaniumccatoy/avx2gcc -m32 -O3 -fomit-frame-pointer
titaniumccatoycrypto_kem/titaniumccatoy/optgcc -m32 -O3 -fomit-frame-pointer
titaniumccatoycrypto_kem/titaniumccatoy/refgcc -m32 -O3 -fomit-frame-pointer