From d05f93da316e634aa2369e856fb04bf03fe39802 Mon Sep 17 00:00:00 2001 From: Mark Dickinson Date: Sun, 16 May 2010 08:39:09 +0000 Subject: [PATCH] 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. ........ -- 2.50.1