Implementation notes: x86, leaf, crypto_dh

Computer: leaf
Architecture: x86
CPU ID: unknown CPU ID
CPU cycles/second: 2001000000...2001000000 (x86cpuspeed)
SUPERCOP version: 20160731
Benchmark dates: 20160728...20160803

crypto_dh

TimeRelative timePrimitiveImplementationCompiler
676080681.00clauscrypto_dh/claus/opensslgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv (4.2.1 20070719 )
1761597922.61clauscrypto_dh/claus/gmpg++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
clauscrypto_dh/claus/cryptoppg++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
clauscrypto_dh/claus/ntlg++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
153623841.00curve2251crypto_dh/curve2251/mpfqgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv (4.2.1 20070719 )
36542201.00curve25519crypto_dh/curve25519/refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv (4.2.1 20070719 )
137398723.76curve25519crypto_dh/curve25519/mpfqgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
ed448goldilockscrypto_dh/ed448goldilocks/32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
ed448goldilockscrypto_dh/ed448goldilocks/64gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
ed448goldilockscrypto_dh/ed448goldilocks/amd64gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
ed448goldilockscrypto_dh/ed448goldilocks/arm32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
ed521gscrypto_dh/ed521gs/refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkcrypto_dh/hecfp61e2bk/v01/varglv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkcrypto_dh/hecfp61e2bk/v01/w8s01glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkcrypto_dh/hecfp61e2bk/v01/w8s02glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkcrypto_dh/hecfp61e2bk/v01/w8s04glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkcrypto_dh/hecfp61e2bk/v01/w8s08glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkcrypto_dh/hecfp61e2bk/v01/w8s16glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkcrypto_dh/hecfp61e2bk/v01/w8s32glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2icrypto_dh/hecfp61e2i/v01/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2icrypto_dh/hecfp61e2i/v01/w8s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2icrypto_dh/hecfp61e2i/v01/w8s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2icrypto_dh/hecfp61e2i/v01/w8s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2icrypto_dh/hecfp61e2i/v01/w8s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2icrypto_dh/hecfp61e2i/v01/w8s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2icrypto_dh/hecfp61e2i/v01/w8s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkcrypto_dh/hecfp64e2bk/v01/varglv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkcrypto_dh/hecfp64e2bk/v01/w8s01glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkcrypto_dh/hecfp64e2bk/v01/w8s02glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkcrypto_dh/hecfp64e2bk/v01/w8s04glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkcrypto_dh/hecfp64e2bk/v01/w8s08glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkcrypto_dh/hecfp64e2bk/v01/w8s16glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkcrypto_dh/hecfp64e2bk/v01/w8s32glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2icrypto_dh/hecfp64e2i/v01/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2icrypto_dh/hecfp64e2i/v01/w8s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2icrypto_dh/hecfp64e2i/v01/w8s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2icrypto_dh/hecfp64e2i/v01/w8s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2icrypto_dh/hecfp64e2i/v01/w8s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2icrypto_dh/hecfp64e2i/v01/w8s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2icrypto_dh/hecfp64e2i/v01/w8s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
134319281.00hectorcrypto_dh/hector/refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv (4.2.1 20070719 )
jacfp127icrypto_dh/jacfp127i/v01/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w4s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w4s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w4s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w4s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w4s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w4s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w8s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w8s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w8s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w8s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w8s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w8s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/varglv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w4s01glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w4s02glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w4s04glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w4s08glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w4s16glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w4s32glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w8s01glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w8s02glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w8s04glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w8s08glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w8s16glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w8s32glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumfp61e2gcrypto_dh/kumfp61e2g/v01/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumfp64e2gcrypto_dh/kumfp64e2g/v01/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w4s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w4s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w4s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w4s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w4s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w4s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w8s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w8s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w8s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w8s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w8s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w8s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
145865281.00kummercrypto_dh/kummer/refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv (4.2.1 20070719 )
nist521gscrypto_dh/nist521gs/refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
441695561.00nistp256crypto_dh/nistp256/refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv (4.2.1 20070719 )
nistp256crypto_dh/nistp256/wblgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w4s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w4s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w4s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w4s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w4s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w4s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w8s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w8s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w8s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w8s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w8s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w8s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/varglv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w4s01glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w4s02glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w4s04glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w4s08glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w4s16glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w4s32glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w8s01glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w8s02glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w8s04glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w8s08glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w8s16glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w8s32glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
295434681.00sclaus1024crypto_dh/sclaus1024/gmpg++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv (4.2.1 20070719 )
sclaus1024crypto_dh/sclaus1024/cryptoppg++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
1498996081.00sclaus2048crypto_dh/sclaus2048/gmpg++ -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv (4.2.1 20070719 )
sclaus2048crypto_dh/sclaus2048/cryptoppg++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
140101201.00surf127epscrypto_dh/surf127eps/mpfqgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv (4.2.1 20070719 )
130581401.00surf2113crypto_dh/surf2113/mpfqgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv (4.2.1 20070719 )

crypto_scalarmult

TimeRelative timePrimitiveImplementationCompiler
36452481.00curve25519crypto_scalarmult/curve25519/athlongcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv (4.2.1 20070719 )
287749567.89curve25519crypto_scalarmult/curve25519/ref10gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
10243113628.10curve25519crypto_scalarmult/curve25519/refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
curve25519crypto_scalarmult/curve25519/donna_c64gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
145049721.00kummercrypto_scalarmult/kummer/ref5ugcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv (4.2.1 20070719 )
173002081.19kummercrypto_scalarmult/kummer/ref5gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv (4.2.1 20070719 )
443704281.00nistp256crypto_scalarmult/nistp256/mj32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv (4.2.1 20070719 )