diff options
author | Mark Dickinson <dickinsm@gmail.com> | 2010-05-16 08:39:09 (GMT) |
---|---|---|
committer | Mark Dickinson <dickinsm@gmail.com> | 2010-05-16 08:39:09 (GMT) |
commit | d05f93da316e634aa2369e856fb04bf03fe39802 (patch) | |
tree | a1b6ae0e10c3b57caafd5b2fe3c1a1da1ec3725d /Doc | |
parent | f21d497b129a88a50fd703a41f4c71bfe70da3d0 (diff) | |
download | cpython-d05f93da316e634aa2369e856fb04bf03fe39802.zip cpython-d05f93da316e634aa2369e856fb04bf03fe39802.tar.gz cpython-d05f93da316e634aa2369e856fb04bf03fe39802.tar.bz2 |
Blocked revisions 81196 via svnmerge
........
r81196 | mark.dickinson | 2010-05-15 18:02:38 +0100 (Sat, 15 May 2010) | 13 lines
Issue #8692: Improve performance of math.factorial:
(1) use a different algorithm that roughly halves the total number of
multiplications required and results in more balanced multiplications
(2) use a lookup table for small arguments
(3) fast accumulation of products in C integer arithmetic rather than
PyLong arithmetic when possible.
Typical speedup, from unscientific testing on a 64-bit laptop, is 4.5x
to 6.5x for arguments in the range 100 - 10000.
Patch by Daniel Stutzbach; extensive reviews by Alexander Belopolsky.
........
Diffstat (limited to 'Doc')
0 files changed, 0 insertions, 0 deletions