| Time | Relative time | Primitive | Implementation | Compiler |
| 5829411 | 1.00 | claus | crypto_dh/claus/gmp | g++ -m64 -march=native -mtune=native -O -fomit-frame-pointer (4.6.1) |
| 7454309 | 1.28 | claus | crypto_dh/claus/cryptopp | g++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer |
| | claus | crypto_dh/claus/ntl | g++ -m64 -O3 -fomit-frame-pointer |
| | claus | crypto_dh/claus/openssl | gcc -m64 -O3 -fomit-frame-pointer |
| 3599680 | 1.00 | curve2251 | crypto_dh/curve2251/mpfq | gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer (4.6.1) |
| | 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 |
| | curve2251 | crypto_dh/curve2251/relic/amd64-ssse3 | gcc -m64 -O3 -fomit-frame-pointer |
| 739608 | 1.00 | curve25519 | crypto_dh/curve25519/ref | gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer (4.6.1) |
| 1007571 | 1.36 | curve25519 | crypto_dh/curve25519/mpfq | gcc -fno-schedule-insns -O3 -fomit-frame-pointer |
| 601833 | 1.00 | ecfp256e | crypto_dh/ecfp256e/v01/w8s8 | gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer (4.6.1) |
| 618009 | 1.03 | ecfp256e | crypto_dh/ecfp256e/v01/w8s2 | gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer (4.6.1) |
| 626067 | 1.04 | ecfp256e | crypto_dh/ecfp256e/v01/w8s4 | gcc -m64 -march=core2 -O2 -fomit-frame-pointer |
| 663552 | 1.10 | ecfp256e | crypto_dh/ecfp256e/v01/w8s1 | gcc -fno-schedule-insns -O2 -fomit-frame-pointer |
| 946121 | 1.57 | ecfp256e | crypto_dh/ecfp256e/v01/var | gcc -march=nocona -O3 -fomit-frame-pointer |
| 746469 | 1.00 | ecfp256h | crypto_dh/ecfp256h/v01/w8s8 | gcc -funroll-loops -m64 -O3 -fomit-frame-pointer (4.6.1) |
| 753660 | 1.01 | ecfp256h | crypto_dh/ecfp256h/v01/w8s4 | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer |
| 763576 | 1.02 | ecfp256h | crypto_dh/ecfp256h/v01/w8s2 | gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer |
| 792461 | 1.06 | ecfp256h | crypto_dh/ecfp256h/v01/w8s1 | gcc -m64 -march=k8 -O3 -fomit-frame-pointer |
| 1222972 | 1.64 | ecfp256h | crypto_dh/ecfp256h/v01/var | gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer |
| 643511 | 1.00 | ecfp256i | crypto_dh/ecfp256i/v01/w8s8 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.1) |
| 646043 | 1.00 | ecfp256i | crypto_dh/ecfp256i/v01/w8s4 | gcc -m64 -O3 -fomit-frame-pointer |
| 651494 | 1.01 | ecfp256i | crypto_dh/ecfp256i/v01/w8s2 | gcc -m64 -O3 -fomit-frame-pointer |
| 675215 | 1.05 | ecfp256i | crypto_dh/ecfp256i/v01/w8s1 | gcc -m64 -march=k8 -O3 -fomit-frame-pointer |
| 992003 | 1.54 | ecfp256i | crypto_dh/ecfp256i/v01/var | gcc -march=nocona -O3 -fomit-frame-pointer |
| 628125 | 1.00 | ecfp256q | crypto_dh/ecfp256q/v01/w8s4 | gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer (4.6.1) |
| 636521 | 1.01 | ecfp256q | crypto_dh/ecfp256q/v01/w8s8 | gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer |
| 639022 | 1.02 | ecfp256q | crypto_dh/ecfp256q/v01/w8s2 | gcc -m64 -O3 -fomit-frame-pointer |
| 665933 | 1.06 | ecfp256q | crypto_dh/ecfp256q/v01/w8s1 | gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer |
| 972195 | 1.55 | ecfp256q | crypto_dh/ecfp256q/v01/var | gcc -march=k8 -O3 -fomit-frame-pointer |
| 717834 | 1.00 | ecfp256s | crypto_dh/ecfp256s/v01/w8s8 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.1) |
| 723086 | 1.01 | ecfp256s | crypto_dh/ecfp256s/v01/w8s4 | gcc -O3 -fomit-frame-pointer |
| 731691 | 1.02 | ecfp256s | crypto_dh/ecfp256s/v01/w8s2 | gcc -m64 -O3 -fomit-frame-pointer |
| 759408 | 1.06 | ecfp256s | crypto_dh/ecfp256s/v01/w8s1 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.6.1) |
| 1174611 | 1.64 | ecfp256s | crypto_dh/ecfp256s/v01/var | gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer |
| 659299 | 1.00 | gls1271 | crypto_dh/gls1271/ref4 | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer (4.6.1) |
| 3280994 | 1.00 | hector | crypto_dh/hector/ref | gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer (4.6.1) |
| | nistp256 | crypto_dh/nistp256/nawaz | gcc -m64 -O3 -fomit-frame-pointer |
| 969186 | 1.00 | sclaus1024 | crypto_dh/sclaus1024/gmp | g++ -m64 -O3 -fomit-frame-pointer (4.6.1) |
| 1334165 | 1.38 | sclaus1024 | crypto_dh/sclaus1024/cryptopp | g++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer |
| 4664906 | 1.00 | sclaus2048 | crypto_dh/sclaus2048/gmp | g++ -fno-schedule-insns -O3 -fomit-frame-pointer (4.6.1) |
| 6256729 | 1.34 | sclaus2048 | crypto_dh/sclaus2048/cryptopp | g++ -m64 -march=k8 -Os -fomit-frame-pointer |
| 1041093 | 1.00 | surf127eps | crypto_dh/surf127eps/mpfq | gcc -O3 -fomit-frame-pointer (4.6.1) |
| 3017930 | 1.00 | surf2113 | crypto_dh/surf2113/mpfq | gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer (4.6.1) |
| Time | Relative time | Primitive | Implementation | Compiler |
| 361710 | 1.00 | curve25519 | crypto_scalarmult/curve25519/amd64-64 | gcc -m64 -O -fomit-frame-pointer (4.6.1) |
| 500614 | 1.38 | curve25519 | crypto_scalarmult/curve25519/donna_c64 | gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer |
| 537170 | 1.49 | curve25519 | crypto_scalarmult/curve25519/amd64-51 | gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer |
| 712649 | 1.97 | curve25519 | crypto_scalarmult/curve25519/donna | gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer |
| 1161435 | 3.21 | curve25519 | crypto_scalarmult/curve25519/ref10 | gcc -funroll-loops -O -fomit-frame-pointer |
| 23057978 | 63.75 | curve25519 | crypto_scalarmult/curve25519/ref | gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer |
| | curve25519 | crypto_scalarmult/curve25519/athlon | gcc -m64 -O3 -fomit-frame-pointer |
| | curve25519 | crypto_scalarmult/curve25519/costigan-schwabe/cbe | gcc -m64 -O3 -fomit-frame-pointer |