Implementation notes: armeabi, odroid, crypto_dh

Computer: odroid
Architecture: armeabi
CPU ID: unknown CPU ID
CPU cycles/second: 1704047830...1704332560 (cortex)
SUPERCOP version: 20160806
Benchmark dates: 20160823...20160902

crypto_dh

TimeRelative timePrimitiveImplementationCompiler
345565451.00clauscrypto_dh/claus/ntlg++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv (6.1.1 20160802)
708191832.05clauscrypto_dh/claus/opensslgcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv
clauscrypto_dh/claus/cryptoppg++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv (6.1.1 20160802)
clauscrypto_dh/claus/gmpg++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv (6.1.1 20160802)
curve2251crypto_dh/curve2251/mpfqgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
22687791.00curve25519crypto_dh/curve25519/refgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv (6.1.1 20160802)
curve25519crypto_dh/curve25519/mpfqgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv (6.1.1 20160802)
52204661.00ed448goldilockscrypto_dh/ed448goldilocks/neon (2014-10-12)clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments (4.2.1 Compatible Clang 3.8.1 (tags/RELEASE 381/final))
91597341.75ed448goldilockscrypto_dh/ed448goldilocks/arm32clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments (4.2.1 Compatible Clang 3.8.1 (tags/RELEASE 381/final))
188553073.61ed448goldilockscrypto_dh/ed448goldilocks/32gcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv
ed448goldilockscrypto_dh/ed448goldilocks/64gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
ed448goldilockscrypto_dh/ed448goldilocks/amd64gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
ed521gscrypto_dh/ed521gs/refgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkcrypto_dh/hecfp61e2bk/v01/varglv8gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkcrypto_dh/hecfp61e2bk/v01/w8s01glv8gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkcrypto_dh/hecfp61e2bk/v01/w8s02glv8gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkcrypto_dh/hecfp61e2bk/v01/w8s04glv8gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkcrypto_dh/hecfp61e2bk/v01/w8s08glv8gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkcrypto_dh/hecfp61e2bk/v01/w8s16glv8gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp61e2bkcrypto_dh/hecfp61e2bk/v01/w8s32glv8gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp61e2icrypto_dh/hecfp61e2i/v01/vargcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp61e2icrypto_dh/hecfp61e2i/v01/w8s01gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp61e2icrypto_dh/hecfp61e2i/v01/w8s02gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp61e2icrypto_dh/hecfp61e2i/v01/w8s04gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp61e2icrypto_dh/hecfp61e2i/v01/w8s08gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp61e2icrypto_dh/hecfp61e2i/v01/w8s16gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp61e2icrypto_dh/hecfp61e2i/v01/w8s32gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkcrypto_dh/hecfp64e2bk/v01/varglv8gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkcrypto_dh/hecfp64e2bk/v01/w8s01glv8gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkcrypto_dh/hecfp64e2bk/v01/w8s02glv8gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkcrypto_dh/hecfp64e2bk/v01/w8s04glv8gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkcrypto_dh/hecfp64e2bk/v01/w8s08glv8gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkcrypto_dh/hecfp64e2bk/v01/w8s16glv8gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp64e2bkcrypto_dh/hecfp64e2bk/v01/w8s32glv8gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp64e2icrypto_dh/hecfp64e2i/v01/vargcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp64e2icrypto_dh/hecfp64e2i/v01/w8s01gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp64e2icrypto_dh/hecfp64e2i/v01/w8s02gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp64e2icrypto_dh/hecfp64e2i/v01/w8s04gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp64e2icrypto_dh/hecfp64e2i/v01/w8s08gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp64e2icrypto_dh/hecfp64e2i/v01/w8s16gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hecfp64e2icrypto_dh/hecfp64e2i/v01/w8s32gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
hectorcrypto_dh/hector/refgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/vargcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w4s01gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w4s02gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w4s04gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w4s08gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w4s16gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w4s32gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w8s01gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w8s02gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w8s04gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w8s08gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w8s16gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp127icrypto_dh/jacfp127i/v01/w8s32gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/varglv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w4s01glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w4s02glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w4s04glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w4s08glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w4s16glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w4s32glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w8s01glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w8s02glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w8s04glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w8s08glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w8s16glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
jacfp128bkcrypto_dh/jacfp128bk/v01/w8s32glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
kumfp61e2gcrypto_dh/kumfp61e2g/v01/vargcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
kumfp64e2gcrypto_dh/kumfp64e2g/v01/vargcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/vargcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w4s01gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w4s02gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w4s04gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w4s08gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w4s16gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w4s32gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w8s01gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w8s02gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w8s04gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w8s08gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w8s16gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
kumjacfp127gcrypto_dh/kumjacfp127g/v01/w8s32gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
14214691.00kummercrypto_dh/kummer/refgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv (6.1.1 20160802)
nist521gscrypto_dh/nist521gs/refgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
121513671.00nistp256crypto_dh/nistp256/refgcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv (6.1.1 20160802)
nistp256crypto_dh/nistp256/wblgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/vargcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w4s01gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w4s02gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w4s04gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w4s08gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w4s16gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w4s32gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w8s01gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w8s02gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w8s04gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w8s08gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w8s16gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp127icrypto_dh/prjfp127i/v01/w8s32gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/varglv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w4s01glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w4s02glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w4s04glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w4s08glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w4s16glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w4s32glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w8s01glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w8s02glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w8s04glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w8s08glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w8s16glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
prjfp128bkcrypto_dh/prjfp128bk/v01/w8s32glv4gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
sclaus1024crypto_dh/sclaus1024/cryptoppg++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
sclaus1024crypto_dh/sclaus1024/gmpg++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
sclaus2048crypto_dh/sclaus2048/cryptoppg++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
sclaus2048crypto_dh/sclaus2048/gmpg++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
surf127epscrypto_dh/surf127eps/mpfqgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
surf2113crypto_dh/surf2113/mpfqgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv

crypto_scalarmult

TimeRelative timePrimitiveImplementationCompiler
22663081.00curve25519crypto_scalarmult/curve25519/neon2gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv (6.1.1 20160802)
47973572.12curve25519crypto_scalarmult/curve25519/ref10clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
6276207027.69curve25519crypto_scalarmult/curve25519/refgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
curve25519crypto_scalarmult/curve25519/donna_c64gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv
14189361.00kummercrypto_scalarmult/kummer/neongcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv (6.1.1 20160802)
31751882.24kummercrypto_scalarmult/kummer/ref5gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv (6.1.1 20160802)
33746942.38kummercrypto_scalarmult/kummer/ref5uclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
121645181.00nistp256crypto_scalarmult/nistp256/mj32clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments (4.2.1 Compatible Clang 3.8.1 (tags/RELEASE 381/final))