This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author vstinner
Recipients christian.heimes, gregory.p.smith, mark.dickinson, vstinner
Date 2008-11-06.11:30:56
SpamBayes Score 1.1834478e-10
Marked as misclassified No
Message-id <1225971058.89.0.4974679456.issue4258@psf.upfronthosting.co.za>
In-reply-to
Content
> I'll investigate the slowdowns

The problem may comes from int64_t on 32 bits CPU. 32x32 -> 64 may be 
emulated on your CPU and so it's slower. I improved your patch to make 
it faster, but I lost all my work because of a misuse of GIT... As I 
remember:
 - I fixed PyLong_FromLong() for small negative integer
 - I unrolled the loop in PyLong_FromLong(): the loop is at least 
called twice (the number has 2 digits or more)
 - I added special code for operations on two numbers of 1 digit 
(each) for long_add(), long_mul(), long_div(), long_bitwise(), etc.
 - and I don't remember the other changes...

Oh, I have an old patch. I will attach it to this message. About 
speed, it was:
 * unpatched: 20600..20900 pystones
 * your patch: 19900..20100 pystones
 * + my changes: 20200..20400 pytones
History
Date User Action Args
2008-11-06 11:30:59vstinnersetrecipients: + vstinner, gregory.p.smith, mark.dickinson, christian.heimes
2008-11-06 11:30:58vstinnersetmessageid: <1225971058.89.0.4974679456.issue4258@psf.upfronthosting.co.za>
2008-11-06 11:30:58vstinnerlinkissue4258 messages
2008-11-06 11:30:57vstinnercreate