Comment 3 for bug 1018522

Revision history for this message
cc (codecrumb) wrote :

So I decided to measure the relative performance of enabling this and for various sizes, there is a marked improvement.

No enable-ec_nistp_64_gcc_128
                              sign verify sign/s verify/s
 160 bit ecdsa (secp160r1) 0.0001s 0.0005s 7889.4 2003.0
 192 bit ecdsa (nistp192) 0.0002s 0.0006s 6329.4 1666.1
 224 bit ecdsa (nistp224) 0.0002s 0.0008s 4867.4 1190.7
 256 bit ecdsa (nistp256) 0.0002s 0.0010s 4194.6 1015.7
 384 bit ecdsa (nistp384) 0.0005s 0.0022s 2134.0 456.3
 521 bit ecdsa (nistp521) 0.0009s 0.0049s 1096.0 205.3
 163 bit ecdsa (nistk163) 0.0004s 0.0017s 2660.8 583.8
 233 bit ecdsa (nistk233) 0.0007s 0.0023s 1437.2 444.0
 283 bit ecdsa (nistk283) 0.0011s 0.0048s 898.1 208.3
 409 bit ecdsa (nistk409) 0.0027s 0.0104s 376.0 95.7
 571 bit ecdsa (nistk571) 0.0059s 0.0232s 170.0 43.0
 163 bit ecdsa (nistb163) 0.0004s 0.0017s 2760.7 572.5
 233 bit ecdsa (nistb233) 0.0007s 0.0023s 1443.8 429.2
 283 bit ecdsa (nistb283) 0.0011s 0.0053s 898.5 187.8
 409 bit ecdsa (nistb409) 0.0027s 0.0116s 374.5 86.0
 571 bit ecdsa (nistb571) 0.0059s 0.0255s 169.5 39.2

With enable-ec_nistp_64_gcc_128
                              sign verify sign/s verify/s
 160 bit ecdsa (secp160r1) 0.0001s 0.0006s 7893.1 1791.3
 192 bit ecdsa (nistp192) 0.0002s 0.0006s 6287.6 1672.9
 224 bit ecdsa (nistp224) 0.0001s 0.0003s 7372.8 3263.7
 256 bit ecdsa (nistp256) 0.0002s 0.0006s 4320.8 1675.4
 384 bit ecdsa (nistp384) 0.0005s 0.0023s 2130.6 443.6
 521 bit ecdsa (nistp521) 0.0008s 0.0018s 1320.9 571.2
 163 bit ecdsa (nistk163) 0.0004s 0.0017s 2717.4 586.9
 233 bit ecdsa (nistk233) 0.0007s 0.0022s 1444.7 451.7
 283 bit ecdsa (nistk283) 0.0011s 0.0048s 898.3 206.3
 409 bit ecdsa (nistk409) 0.0027s 0.0104s 377.3 96.5
 571 bit ecdsa (nistk571) 0.0059s 0.0230s 168.3 43.5
 163 bit ecdsa (nistb163) 0.0004s 0.0017s 2759.1 574.6
 233 bit ecdsa (nistb233) 0.0007s 0.0023s 1459.6 435.0
 283 bit ecdsa (nistb283) 0.0011s 0.0053s 887.6 189.0
 409 bit ecdsa (nistb409) 0.0026s 0.0117s 379.3 85.7
 571 bit ecdsa (nistb571) 0.0059s 0.0259s 169.8 38.7

After conversing with Adam Langley, it seems does make sense to enable this. Attached is a patch to build/makefile.