Implementation notes: amd64, gpu, crypto_dh

Computer: gpu
Architecture: amd64
CPU ID: GenuineIntel-000206d7-bfebfbff
CPU cycles/second: 3800000000...3800000000 (amd64cpuinfo)
SUPERCOP version: 20190816
Benchmark dates: 20190820...20191015

crypto_dh

TimeRelative timePrimitiveImplementationCompiler
87027281.00clauscryptoppg++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer
105252451.21clausgmpg++ -march=k8 -O3 -fomit-frame-pointer
113689881.31clausntlclang++ -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments (4.2.1 Compatible Clang 6.0.0 (tags/RELEASE 600/final))
clausopensslgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
8785441.00curve2251relic/amd64-avxgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer
10086121.15curve2251relic/amd64-clmulgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer
20804442.37curve2251relic/amd64-ssse3gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer
34921803.97curve2251mpfqgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer
9749001.00curve25519refgcc -march=barcelona -Os -fomit-frame-pointer
17572381.80curve25519mpfqgcc -m64 -march=barcelona -O3 -fomit-frame-pointer
6673161.00ecfp256ev01/w8s8gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer
8815801.32ecfp256ev01/w8s4gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer
9328721.40ecfp256ev01/w8s2gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer
9778161.47ecfp256ev01/w8s1gcc -m64 -O2 -fomit-frame-pointer
15089962.26ecfp256ev01/vargcc -march=k8 -O3 -fomit-frame-pointer
7795961.00ecfp256hv01/w8s8gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer
8519721.09ecfp256hv01/w8s1gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer
10414721.34ecfp256hv01/w8s4gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer
10606601.36ecfp256hv01/w8s2gcc -fno-schedule-insns -O3 -fomit-frame-pointer
12971801.66ecfp256hv01/vargcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
16092961.00ecfp256iv01/vargcc -fno-schedule-insns -O3 -fomit-frame-pointer
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
6686281.00ecfp256qv01/w8s8gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer
9910771.48ecfp256qv01/w8s4gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer
10035761.50ecfp256qv01/w8s2gcc -funroll-loops -O3 -fomit-frame-pointer
10307761.54ecfp256qv01/w8s1gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer
12183201.82ecfp256qv01/vargcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
9091601.00ecfp256sv01/w8s8gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer
11838081.30ecfp256sv01/w8s1gcc -funroll-loops -m64 -O3 -fomit-frame-pointer
11877721.31ecfp256sv01/w8s2gcc -m64 -march=corei7 -O -fomit-frame-pointer
12210921.34ecfp256sv01/w8s4gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer
14345881.58ecfp256sv01/vargcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
29090561.00ed448goldilocks64gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer
30139441.04ed448goldilocksamd64clang -O3 -fomit-frame-pointer -Qunused-arguments (4.2.1 Compatible Clang 6.0.0 (tags/RELEASE 600/final))
82461322.83ed448goldilocks32clang -O3 -fomit-frame-pointer -Qunused-arguments (4.2.1 Compatible Clang 6.0.0 (tags/RELEASE 600/final))
91701001.00ed521gsrefclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments (4.2.1 Compatible Clang 6.0.0 (tags/RELEASE 600/final))
gls1271ref4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
2983051.00gls254refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments (4.2.1 Compatible Clang 6.0.0 (tags/RELEASE 600/final))
6907362.32gls254protgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer
6920002.32gls254optclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments (4.2.1 Compatible Clang 6.0.0 (tags/RELEASE 600/final))
4740521.00gls254protprotgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
7500241.58gls254protoptclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments (4.2.1 Compatible Clang 6.0.0 (tags/RELEASE 600/final))
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
14697881.00k277monrefgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer
10703841.00k277taarefclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments (4.2.1 Compatible Clang 6.0.0 (tags/RELEASE 600/final))
12245841.00k298refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments (4.2.1 Compatible Clang 6.0.0 (tags/RELEASE 600/final))
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
4897841.00kummerrefclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments (4.2.1 Compatible Clang 6.0.0 (tags/RELEASE 600/final))
107583281.00nist521gsrefclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments (4.2.1 Compatible Clang 6.0.0 (tags/RELEASE 600/final))
33940841.00nistp256refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments (4.2.1 Compatible Clang 6.0.0 (tags/RELEASE 600/final))
45816241.35nistp256wblclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
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
18237201.00sclaus1024gmpg++ -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer
21294301.17sclaus1024cryptoppg++ -m64 -march=nocona -O -fomit-frame-pointer
100252921.00sclaus2048gmpg++ -march=barcelona -O2 -fomit-frame-pointer
117231561.17sclaus2048cryptoppg++ -m64 -march=corei7 -O -fomit-frame-pointer
15678031.00surf127epsmpfqgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer
32491721.00surf2113mpfqgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv