[IronPython] performance hit on 64 bit systems

Idan Zaltzberg idan at cloudshare.com
Fri Sep 3 12:04:00 CEST 2010


Hello,

I'm trying to migrate a big  application (running on IronPython 2.6.1) from
a 32 bit OS (windows server 2003 R2) to a 64 bit system (windows server 2008
R2).

I have noticed about 50% performance hit, i.e. operations that took 10
seconds, now take 15 seconds.

I have tried to see the what is the root cause and created the following
test, and ran it on both systems:



def f():

    sw.Reset()

     sw.Start()

     for x in xrange(n):

            s='string:%s' % (x,)

     print sw.Elapsed.TotalSeconds



from System.Diagnostics import Stopwatch

sw = Stopwatch()

n = 1e7

f()

è *11.7766457 (In windows server 2003 R2 – 32 bit)*

è *16.3231212 (In windows server 2008 R2 – 64 bit)*

* *

Which matches the about 50% loss I have seen on my system.

On the other hand, the equivalent code in cpython yields *slightly better
results to the 64 bit OS*  (3.7 sec to the 64 bit, against 4.1 sec to the 32
bit).



I hoped you might help to understand why this as happened and can I improve
the performance in any way for 64 bit systems.

Thanks.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ironpython-users/attachments/20100903/89c86971/attachment.html>


More information about the Ironpython-users mailing list