Time | Relative time | Primitive | Implementation | Compiler |
10493225 | 1.00 | claus | crypto_dh/claus/gmp | g++ -m64 -O3 -fomit-frame-pointer (4.6.3) |
11139450 | 1.06 | claus | crypto_dh/claus/cryptopp | g++ -m64 -O2 -fomit-frame-pointer |
12252737 | 1.17 | claus | crypto_dh/claus/openssl | gcc -m64 -O2 -fomit-frame-pointer |
| | claus | crypto_dh/claus/ntl | g++ -m64 -O3 -fomit-frame-pointer (4.6.3) |
1278513 | 1.00 | curve2251 | crypto_dh/curve2251/relic/amd64-ssse3 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
4530762 | 3.54 | curve2251 | crypto_dh/curve2251/mpfq | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer |
| | curve2251 | crypto_dh/curve2251/relic/amd64-avx | gcc -m64 -O3 -fomit-frame-pointer |
| | curve2251 | crypto_dh/curve2251/relic/amd64-clmul | gcc -m64 -O3 -fomit-frame-pointer |
1231225 | 1.00 | curve25519 | crypto_dh/curve25519/ref | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
1582425 | 1.29 | curve25519 | crypto_dh/curve25519/mpfq | gcc -m64 -O3 -fomit-frame-pointer |
855162 | 1.00 | ecfp256e | crypto_dh/ecfp256e/v01/w8s8 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
871800 | 1.02 | ecfp256e | crypto_dh/ecfp256e/v01/w8s4 | gcc -m64 -O3 -fomit-frame-pointer |
883325 | 1.03 | ecfp256e | crypto_dh/ecfp256e/v01/w8s2 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
925137 | 1.08 | ecfp256e | crypto_dh/ecfp256e/v01/w8s1 | gcc -m64 -O3 -fomit-frame-pointer |
1429837 | 1.67 | ecfp256e | crypto_dh/ecfp256e/v01/var | gcc -m64 -O3 -fomit-frame-pointer |
1043637 | 1.00 | ecfp256h | crypto_dh/ecfp256h/v01/w8s8 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
1061875 | 1.02 | ecfp256h | crypto_dh/ecfp256h/v01/w8s4 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
1071175 | 1.03 | ecfp256h | crypto_dh/ecfp256h/v01/w8s2 | gcc -m64 -O3 -fomit-frame-pointer |
1117775 | 1.07 | ecfp256h | crypto_dh/ecfp256h/v01/w8s1 | gcc -m64 -O3 -fomit-frame-pointer |
1789287 | 1.71 | ecfp256h | crypto_dh/ecfp256h/v01/var | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
1503688 | 1.00 | ecfp256i | crypto_dh/ecfp256i/v01/var | gcc -m64 -O3 -fomit-frame-pointer (4.6.3) |
| | ecfp256i | crypto_dh/ecfp256i/v01/w8s1 | gcc -m64 -O3 -fomit-frame-pointer (4.6.3) |
| | ecfp256i | crypto_dh/ecfp256i/v01/w8s2 | gcc -m64 -O3 -fomit-frame-pointer (4.6.3) |
| | ecfp256i | crypto_dh/ecfp256i/v01/w8s4 | gcc -m64 -O3 -fomit-frame-pointer (4.6.3) |
| | ecfp256i | crypto_dh/ecfp256i/v01/w8s8 | gcc -m64 -O3 -fomit-frame-pointer (4.6.3) |
906650 | 1.00 | ecfp256q | crypto_dh/ecfp256q/v01/w8s8 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
922750 | 1.02 | ecfp256q | crypto_dh/ecfp256q/v01/w8s4 | gcc -m64 -O3 -fomit-frame-pointer |
934388 | 1.03 | ecfp256q | crypto_dh/ecfp256q/v01/w8s2 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
973788 | 1.07 | ecfp256q | crypto_dh/ecfp256q/v01/w8s1 | gcc -m64 -O3 -fomit-frame-pointer |
1485800 | 1.64 | ecfp256q | crypto_dh/ecfp256q/v01/var | gcc -m64 -O3 -fomit-frame-pointer |
1083800 | 1.00 | ecfp256s | crypto_dh/ecfp256s/v01/w8s8 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
1084788 | 1.00 | ecfp256s | crypto_dh/ecfp256s/v01/w8s4 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
1103200 | 1.02 | ecfp256s | crypto_dh/ecfp256s/v01/w8s2 | gcc -m64 -O3 -fomit-frame-pointer |
1144725 | 1.06 | ecfp256s | crypto_dh/ecfp256s/v01/w8s1 | gcc -m64 -O3 -fomit-frame-pointer |
1839412 | 1.70 | ecfp256s | crypto_dh/ecfp256s/v01/var | gcc -m64 -O3 -fomit-frame-pointer |
893213 | 1.00 | gls1271 | crypto_dh/gls1271/ref4 | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer (4.6.3) |
| | gls254 | crypto_dh/gls254/prot | gcc -m64 -O3 -fomit-frame-pointer |
| | gls254 | crypto_dh/gls254/ref | gcc -m64 -O3 -fomit-frame-pointer |
875337 | 1.00 | hecfp127i | crypto_dh/hecfp127i/v02/w8s32 | gcc -m64 -O3 -fomit-frame-pointer (4.6.3) |
878700 | 1.00 | hecfp127i | crypto_dh/hecfp127i/v02/w8s16 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer |
885262 | 1.01 | hecfp127i | crypto_dh/hecfp127i/v02/w8s08 | icc -m64 -O1 -static -xHost -fomit-frame-pointer |
895037 | 1.02 | hecfp127i | crypto_dh/hecfp127i/v02/w8s04 | icc -m64 -O1 -static -xHost -fomit-frame-pointer |
912900 | 1.04 | hecfp127i | crypto_dh/hecfp127i/v02/w8s02 | gcc -m64 -O3 -fomit-frame-pointer (4.6.3) |
950438 | 1.09 | hecfp127i | crypto_dh/hecfp127i/v02/w8s01 | gcc -m64 -O3 -fomit-frame-pointer (4.6.3) |
1557038 | 1.78 | hecfp127i | crypto_dh/hecfp127i/v02/var | gcc -m64 -O3 -fomit-frame-pointer (4.6.3) |
807487 | 1.00 | hecfp128bk | crypto_dh/hecfp128bk/v02/w8s32glv4 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
808100 | 1.00 | hecfp128bk | crypto_dh/hecfp128bk/v02/w8s16glv4 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
823725 | 1.02 | hecfp128bk | crypto_dh/hecfp128bk/v02/w8s08glv4 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
832262 | 1.03 | hecfp128bk | crypto_dh/hecfp128bk/v02/w8s04glv4 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
868637 | 1.08 | hecfp128bk | crypto_dh/hecfp128bk/v02/w8s02glv4 | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer |
931350 | 1.15 | hecfp128bk | crypto_dh/hecfp128bk/v02/w8s01glv4 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
1264150 | 1.57 | hecfp128bk | crypto_dh/hecfp128bk/v02/varglv4 | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer |
803850 | 1.00 | hecfp128fkt | crypto_dh/hecfp128fkt/v02/w8s32glv4 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
814750 | 1.01 | hecfp128fkt | crypto_dh/hecfp128fkt/v02/w8s16glv4 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
817687 | 1.02 | hecfp128fkt | crypto_dh/hecfp128fkt/v02/w8s08glv4 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
836138 | 1.04 | hecfp128fkt | crypto_dh/hecfp128fkt/v02/w8s04glv4 | icc -m64 -O1 -static -xHost -fomit-frame-pointer |
863400 | 1.07 | hecfp128fkt | crypto_dh/hecfp128fkt/v02/w8s02glv4 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
931087 | 1.16 | hecfp128fkt | crypto_dh/hecfp128fkt/v02/w8s01glv4 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
1261850 | 1.57 | hecfp128fkt | crypto_dh/hecfp128fkt/v02/varglv4 | gcc -m64 -O3 -fomit-frame-pointer |
1563050 | 1.00 | hecfp128i | crypto_dh/hecfp128i/v02/w8s16 | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer (4.6.3) |
1563187 | 1.00 | hecfp128i | crypto_dh/hecfp128i/v02/w8s32 | gcc -m64 -O3 -fomit-frame-pointer |
1572175 | 1.01 | hecfp128i | crypto_dh/hecfp128i/v02/w8s08 | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer (4.6.3) |
1589050 | 1.02 | hecfp128i | crypto_dh/hecfp128i/v02/w8s04 | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer (4.6.3) |
1622800 | 1.04 | hecfp128i | crypto_dh/hecfp128i/v02/w8s02 | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer (4.6.3) |
1692675 | 1.08 | hecfp128i | crypto_dh/hecfp128i/v02/w8s01 | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer (4.6.3) |
2772900 | 1.77 | hecfp128i | crypto_dh/hecfp128i/v02/var | icc -m64 -O3 -static -xHost -fomit-frame-pointer |
| | hecfp61e2bk | crypto_dh/hecfp61e2bk/v01/varglv8 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp61e2bk | crypto_dh/hecfp61e2bk/v01/w8s01glv8 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp61e2bk | crypto_dh/hecfp61e2bk/v01/w8s02glv8 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp61e2bk | crypto_dh/hecfp61e2bk/v01/w8s04glv8 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp61e2bk | crypto_dh/hecfp61e2bk/v01/w8s08glv8 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp61e2bk | crypto_dh/hecfp61e2bk/v01/w8s16glv8 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp61e2bk | crypto_dh/hecfp61e2bk/v01/w8s32glv8 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp61e2i | crypto_dh/hecfp61e2i/v01/var | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp61e2i | crypto_dh/hecfp61e2i/v01/w8s01 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp61e2i | crypto_dh/hecfp61e2i/v01/w8s02 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp61e2i | crypto_dh/hecfp61e2i/v01/w8s04 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp61e2i | crypto_dh/hecfp61e2i/v01/w8s08 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp61e2i | crypto_dh/hecfp61e2i/v01/w8s16 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp61e2i | crypto_dh/hecfp61e2i/v01/w8s32 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp64e2bk | crypto_dh/hecfp64e2bk/v01/varglv8 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp64e2bk | crypto_dh/hecfp64e2bk/v01/w8s01glv8 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp64e2bk | crypto_dh/hecfp64e2bk/v01/w8s02glv8 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp64e2bk | crypto_dh/hecfp64e2bk/v01/w8s04glv8 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp64e2bk | crypto_dh/hecfp64e2bk/v01/w8s08glv8 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp64e2bk | crypto_dh/hecfp64e2bk/v01/w8s16glv8 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp64e2bk | crypto_dh/hecfp64e2bk/v01/w8s32glv8 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp64e2i | crypto_dh/hecfp64e2i/v01/var | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp64e2i | crypto_dh/hecfp64e2i/v01/w8s01 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp64e2i | crypto_dh/hecfp64e2i/v01/w8s02 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp64e2i | crypto_dh/hecfp64e2i/v01/w8s04 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp64e2i | crypto_dh/hecfp64e2i/v01/w8s08 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp64e2i | crypto_dh/hecfp64e2i/v01/w8s16 | gcc -m64 -O3 -fomit-frame-pointer |
| | hecfp64e2i | crypto_dh/hecfp64e2i/v01/w8s32 | gcc -m64 -O3 -fomit-frame-pointer |
3625075 | 1.00 | hector | crypto_dh/hector/ref | gcc -m64 -O2 -fomit-frame-pointer (4.6.3) |
723200 | 1.00 | kumfp127g | crypto_dh/kumfp127g/v02/var | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
1285188 | 1.00 | kumfp128g | crypto_dh/kumfp128g/v02/var | icc -m64 -O3 -static -xHost -fomit-frame-pointer (14.0.20130728) |
| | kumfp61e2g | crypto_dh/kumfp61e2g/v01/var | gcc -m64 -O3 -fomit-frame-pointer |
| | kumfp64e2g | crypto_dh/kumfp64e2g/v01/var | gcc -m64 -O3 -fomit-frame-pointer |
| | kummer | crypto_dh/kummer/ref | gcc -m64 -O3 -fomit-frame-pointer |
1765762 | 1.00 | sclaus1024 | crypto_dh/sclaus1024/gmp | g++ -m64 -O3 -fomit-frame-pointer (4.6.3) |
1979963 | 1.12 | sclaus1024 | crypto_dh/sclaus1024/cryptopp | icpc -m64 -O1 -static -xHost -fomit-frame-pointer |
8680725 | 1.00 | sclaus2048 | crypto_dh/sclaus2048/gmp | g++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
9500975 | 1.09 | sclaus2048 | crypto_dh/sclaus2048/cryptopp | g++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.3) |
1628387 | 1.00 | surf127eps | crypto_dh/surf127eps/mpfq | clang -O3 -march=native -m64 -fomit-frame-pointer (4.2.1 Compatible Ubuntu Clang 3.4 (trunk)) |
3456037 | 1.00 | surf2113 | crypto_dh/surf2113/mpfq | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer (4.6.3) |