| Time | Relative time | Primitive | Implementation | Compiler |
| 10794755 | 1.00 | claus | crypto_dh/claus/cryptopp | g++ -march=k8 -O3 -fomit-frame-pointer (4.1.2 20080704 (Red Hat 4.1.2-48)) |
| 21330150 | 1.98 | claus | crypto_dh/claus/gmp | g++ -m64 -march=core2 -Os -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 |
| 1190903 | 1.00 | curve2251 | crypto_dh/curve2251/relic/amd64-ssse3 | gcc -funroll-loops -O3 -fomit-frame-pointer (4.1.2 20080704 (Red Hat 4.1.2-48)) |
| 3282579 | 2.76 | curve2251 | crypto_dh/curve2251/mpfq | gcc -funroll-loops -m64 -march=k8 -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 |
| 1957067 | 1.00 | curve25519 | crypto_dh/curve25519/ref | gcc -m64 -march=core2 -Os -fomit-frame-pointer (4.1.2 20080704 (Red Hat 4.1.2-48)) |
| 2846135 | 1.45 | curve25519 | crypto_dh/curve25519/mpfq | gcc -funroll-loops -O3 -fomit-frame-pointer |
| 716154 | 1.00 | ecfp256e | crypto_dh/ecfp256e/v01/w8s4 | gcc -m64 -march=k8 -Os -fomit-frame-pointer (4.1.2 20080704 (Red Hat 4.1.2-48)) |
| 733707 | 1.02 | ecfp256e | crypto_dh/ecfp256e/v01/w8s2 | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer |
| 749876 | 1.05 | ecfp256e | crypto_dh/ecfp256e/v01/w8s1 | gcc -fno-schedule-insns -O3 -fomit-frame-pointer |
| 752003 | 1.05 | ecfp256e | crypto_dh/ecfp256e/v01/w8s8 | gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer |
| 1157621 | 1.62 | ecfp256e | crypto_dh/ecfp256e/v01/var | gcc -m64 -march=k8 -O3 -fomit-frame-pointer |
| 863154 | 1.00 | ecfp256h | crypto_dh/ecfp256h/v01/w8s2 | gcc -O3 -fomit-frame-pointer (4.1.2 20080704 (Red Hat 4.1.2-48)) |
| 868536 | 1.01 | ecfp256h | crypto_dh/ecfp256h/v01/w8s4 | gcc -funroll-loops -m64 -Os -fomit-frame-pointer |
| 893245 | 1.03 | ecfp256h | crypto_dh/ecfp256h/v01/w8s1 | gcc -march=k8 -O3 -fomit-frame-pointer |
| 999180 | 1.16 | ecfp256h | crypto_dh/ecfp256h/v01/w8s8 | gcc -funroll-loops -O3 -fomit-frame-pointer |
| 1457361 | 1.69 | ecfp256h | crypto_dh/ecfp256h/v01/var | gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer |
| 753336 | 1.00 | ecfp256i | crypto_dh/ecfp256i/v01/w8s8 | gcc -m64 -O3 -fomit-frame-pointer (4.1.2 20080704 (Red Hat 4.1.2-48)) |
| 774061 | 1.03 | ecfp256i | crypto_dh/ecfp256i/v01/w8s2 | gcc -march=k8 -O3 -fomit-frame-pointer |
| 859849 | 1.14 | ecfp256i | crypto_dh/ecfp256i/v01/w8s1 | gcc -m64 -march=nocona -O2 -fomit-frame-pointer |
| 920900 | 1.22 | ecfp256i | crypto_dh/ecfp256i/v01/w8s4 | gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer |
| 1216576 | 1.61 | ecfp256i | crypto_dh/ecfp256i/v01/var | gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer |
| 760236 | 1.00 | ecfp256q | crypto_dh/ecfp256q/v01/w8s4 | gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer (4.1.2 20080704 (Red Hat 4.1.2-48)) |
| 761003 | 1.00 | ecfp256q | crypto_dh/ecfp256q/v01/w8s2 | gcc -march=k8 -O3 -fomit-frame-pointer |
| 790415 | 1.04 | ecfp256q | crypto_dh/ecfp256q/v01/w8s1 | gcc -m64 -march=k8 -O3 -fomit-frame-pointer |
| 1226742 | 1.61 | ecfp256q | crypto_dh/ecfp256q/v01/var | gcc -funroll-loops -Os -fomit-frame-pointer |
| 1662433 | 2.19 | ecfp256q | crypto_dh/ecfp256q/v01/w8s8 | gcc -fno-schedule-insns -O3 -fomit-frame-pointer |
| 914739 | 1.00 | ecfp256s | crypto_dh/ecfp256s/v01/w8s2 | gcc -m64 -march=nocona -O3 -fomit-frame-pointer (4.1.2 20080704 (Red Hat 4.1.2-48)) |
| 918788 | 1.00 | ecfp256s | crypto_dh/ecfp256s/v01/w8s4 | gcc -funroll-loops -Os -fomit-frame-pointer |
| 948261 | 1.04 | ecfp256s | crypto_dh/ecfp256s/v01/w8s1 | gcc -m64 -O3 -fomit-frame-pointer |
| 961224 | 1.05 | ecfp256s | crypto_dh/ecfp256s/v01/w8s8 | gcc -m64 -march=k8 -O3 -fomit-frame-pointer |
| 1524530 | 1.67 | ecfp256s | crypto_dh/ecfp256s/v01/var | gcc -O3 -fomit-frame-pointer |
| 1010044 | 1.00 | gls1271 | crypto_dh/gls1271/ref4 | gcc -m64 -march=core2 -O3 -fomit-frame-pointer (4.1.2 20080704 (Red Hat 4.1.2-48)) |
| 2986836 | 1.00 | hector | crypto_dh/hector/ref | gcc -fno-schedule-insns -O -fomit-frame-pointer (4.1.2 20080704 (Red Hat 4.1.2-48)) |
| 1916233 | 1.00 | sclaus1024 | crypto_dh/sclaus1024/cryptopp | g++ -m64 -O -fomit-frame-pointer (4.1.2 20080704 (Red Hat 4.1.2-48)) |
| 3584392 | 1.87 | sclaus1024 | crypto_dh/sclaus1024/gmp | g++ -O3 -fomit-frame-pointer |
| 9078687 | 1.00 | sclaus2048 | crypto_dh/sclaus2048/cryptopp | g++ -march=nocona -O3 -fomit-frame-pointer (4.1.2 20080704 (Red Hat 4.1.2-48)) |
| 17444033 | 1.92 | sclaus2048 | crypto_dh/sclaus2048/gmp | g++ -march=nocona -O2 -fomit-frame-pointer |
| 3048758 | 1.00 | surf127eps | crypto_dh/surf127eps/mpfq | gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer (4.1.2 20080704 (Red Hat 4.1.2-48)) |
| 4866093 | 1.00 | surf2113 | crypto_dh/surf2113/mpfq | gcc -funroll-loops -O3 -fomit-frame-pointer (4.1.2 20080704 (Red Hat 4.1.2-48)) |