Implementation notes: amd64, genji291, crypto_dh

Computer: genji291
Architecture: amd64
CPU ID: GenuineIntel-00050671-bfebfbff
CPU cycles/second: 1400000000...1400000000 (amd64cpuinfo)
SUPERCOP version: 20180818
Benchmark dates: 20180819...20180821

crypto_dh

TimeRelative timePrimitiveImplementationCompiler
502381041.00clausopensslicc -xMIC-AVX512 -O2 -fomit-frame-pointer (18.0.20180210)
clauscryptoppg++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
clausgmpg++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
clausntlg++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
7292321.00curve2251relic/amd64-avxicc -xAVX -O3 -fomit-frame-pointer (18.0.20180210)
7910561.08curve2251relic/amd64-clmulicc -xCORE-AVX-I -O3 -fomit-frame-pointer
20536602.82curve2251relic/amd64-ssse3icc -xCORE-AVX-I -O3 -fomit-frame-pointer
curve2251mpfqgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
12019841.00curve25519reficc -xMIC-AVX512 -O2 -fomit-frame-pointer (18.0.20180210)
26228862.18curve25519mpfqicc -xSSE4.1 -O2 -fomit-frame-pointer
14913781.00ecfp256ev01/w8s8icc (18.0.20180210)
15203021.02ecfp256ev01/w8s4icc -xMIC-AVX512 -O3 -fomit-frame-pointer
15377041.03ecfp256ev01/w8s2icc -xMIC-AVX512 -O2 -fomit-frame-pointer
15675941.05ecfp256ev01/w8s1icc -xMIC-AVX512 -O2 -fomit-frame-pointer
24743461.66ecfp256ev01/varicc -xMIC-AVX512 -O3 -fomit-frame-pointer
18378641.00ecfp256hv01/w8s8icc -xMIC-AVX512 -O2 -fomit-frame-pointer (18.0.20180210)
18384101.00ecfp256hv01/w8s4icc -no-vec
18665221.02ecfp256hv01/w8s2icc -xMIC-AVX512 -O3 -fomit-frame-pointer
19418281.06ecfp256hv01/w8s1icc -xMIC-AVX512 -O3 -fomit-frame-pointer
31176741.70ecfp256hv01/varicc -no-vec
26262601.00ecfp256iv01/varicc -xMIC-AVX512 -O2 -fomit-frame-pointer (18.0.20180210)
ecfp256iv01/w8s1gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
ecfp256iv01/w8s2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
ecfp256iv01/w8s4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
ecfp256iv01/w8s8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
15714581.00ecfp256qv01/w8s8icc -xMIC-AVX512 -O2 -fomit-frame-pointer (18.0.20180210)
15816781.01ecfp256qv01/w8s4icc -xMIC-AVX512 -O3 -fomit-frame-pointer
16186521.03ecfp256qv01/w8s2icc -xMIC-AVX512 -O2 -fomit-frame-pointer (18.0.20180210)
16557661.05ecfp256qv01/w8s1icc -xMIC-AVX512 -O3 -fomit-frame-pointer
25725001.64ecfp256qv01/varicc -xMIC-AVX512 -O2 -fomit-frame-pointer (18.0.20180210)
18651641.00ecfp256sv01/w8s8icc -xMIC-AVX512 -O3 -fomit-frame-pointer (18.0.20180210)
18842181.01ecfp256sv01/w8s4icc -xMIC-AVX512 -O2 -fomit-frame-pointer
19414641.04ecfp256sv01/w8s2icc -xMIC-AVX512 -O2 -fomit-frame-pointer
19672101.05ecfp256sv01/w8s1icc -xMIC-AVX512 -O3 -fomit-frame-pointer (18.0.20180210)
31913141.71ecfp256sv01/varicc -xMIC-AVX512 -O2 -fomit-frame-pointer
64957621.00ed448goldilocksamd64icc -xMIC-AVX512 -O3 -fomit-frame-pointer (18.0.20180210)
65934961.02ed448goldilocks64icc -xMIC-AVX512 -O3 -fomit-frame-pointer (18.0.20180210)
131045882.02ed448goldilocks32icc -xMIC-AVX512 -O3 -fomit-frame-pointer (18.0.20180210)
ed448goldilocksarm32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
211251041.00ed521gsreficc -xMIC-AVX512 -O2 -fomit-frame-pointer (18.0.20180210)
gls1271ref4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
2814981.00gls254opticc -xMIC-AVX512 -O2 -fomit-frame-pointer (18.0.20180210)
3479281.24gls254reficc -xMIC-AVX512 -O2 -fomit-frame-pointer (18.0.20180210)
4552241.62gls254proticc -xMIC-AVX512 -O2 -fomit-frame-pointer (18.0.20180210)
2961421.00gls254protopticc -xMIC-AVX512 -O2 -fomit-frame-pointer (18.0.20180210)
4551681.54gls254protproticc -xMIC-AVX512 -O2 -fomit-frame-pointer (18.0.20180210)
hecfp127iv02/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp127iv02/w8s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp127iv02/w8s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp127iv02/w8s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp127iv02/w8s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp127iv02/w8s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp127iv02/w8s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128bkv02/varglv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128bkv02/w8s01glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128bkv02/w8s02glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128bkv02/w8s04glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128bkv02/w8s08glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128bkv02/w8s16glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128bkv02/w8s32glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128fktv02/varglv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128fktv02/w8s01glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128fktv02/w8s02glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128fktv02/w8s04glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128fktv02/w8s08glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128fktv02/w8s16glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128fktv02/w8s32glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128iv02/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128iv02/w8s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128iv02/w8s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128iv02/w8s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128iv02/w8s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128iv02/w8s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp128iv02/w8s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkv01/varglv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkv01/w8s01glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkv01/w8s02glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkv01/w8s04glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkv01/w8s08glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkv01/w8s16glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkv01/w8s32glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2iv01/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2iv01/w8s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2iv01/w8s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2iv01/w8s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2iv01/w8s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2iv01/w8s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp61e2iv01/w8s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkv01/varglv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkv01/w8s01glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkv01/w8s02glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkv01/w8s04glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkv01/w8s08glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkv01/w8s16glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkv01/w8s32glv8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2iv01/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2iv01/w8s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2iv01/w8s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2iv01/w8s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2iv01/w8s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2iv01/w8s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hecfp64e2iv01/w8s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
hectorrefgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127iv01/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127iv01/w4s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127iv01/w4s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127iv01/w4s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127iv01/w4s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127iv01/w4s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127iv01/w4s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127iv01/w8s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127iv01/w8s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127iv01/w8s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127iv01/w8s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127iv01/w8s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp127iv01/w8s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkv01/varglv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkv01/w4s01glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkv01/w4s02glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkv01/w4s04glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkv01/w4s08glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkv01/w4s16glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkv01/w4s32glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkv01/w8s01glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkv01/w8s02glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkv01/w8s04glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkv01/w8s08glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkv01/w8s16glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
jacfp128bkv01/w8s32glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
4416861.00k277monreficc -xMIC-AVX512 -O2 -fomit-frame-pointer (18.0.20180210)
3174501.00k277taareficc -xMIC-AVX512 -O3 -fomit-frame-pointer (18.0.20180210)
4006381.00k298reficc -xAVX -O3 -fomit-frame-pointer (18.0.20180210)
kumfp127gv02/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumfp128gv02/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumfp61e2gv01/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumfp64e2gv01/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gv01/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gv01/w4s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gv01/w4s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gv01/w4s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gv01/w4s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gv01/w4s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gv01/w4s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gv01/w8s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gv01/w8s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gv01/w8s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gv01/w8s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gv01/w8s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gv01/w8s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
4310181.00kummerreficc -xCORE-AVX2 -O2 -fomit-frame-pointer (18.0.20180210)
260337701.00nist521gsreficc -xMIC-AVX512 -O3 -fomit-frame-pointer (18.0.20180210)
49591501.00nistp256reficc -xCORE-AVX2 -O2 -fomit-frame-pointer (18.0.20180210)
59302461.20nistp256wblicc -xMIC-AVX512 -O2 -fomit-frame-pointer
prjfp127iv01/vargcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127iv01/w4s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127iv01/w4s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127iv01/w4s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127iv01/w4s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127iv01/w4s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127iv01/w4s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127iv01/w8s01gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127iv01/w8s02gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127iv01/w8s04gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127iv01/w8s08gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127iv01/w8s16gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp127iv01/w8s32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkv01/varglv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkv01/w4s01glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkv01/w4s02glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkv01/w4s04glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkv01/w4s08glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkv01/w4s16glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkv01/w4s32glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkv01/w8s01glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkv01/w8s02glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkv01/w8s04glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkv01/w8s08glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkv01/w8s16glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
prjfp128bkv01/w8s32glv4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
sclaus1024cryptoppg++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
sclaus1024gmpg++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
sclaus2048cryptoppg++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
sclaus2048gmpg++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
28740881.00surf127epsmpfqicc -xCORE-AVX2 -O2 -fomit-frame-pointer (18.0.20180210)
surf2113mpfqgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv