[IronPython] IronPython 2.0A2 performance problems

2007-07-16 Thread Arman Bostani
The following code runs about 13 times slower with version 2.0A2 than 1.1! -arman import System d = System.Collections.SortedList() t = System.DateTime.Now for k in xrange(10): d[k] = k print 'SortedList time', (System.DateTime.Now - t).Ticks/10 __

Re: [IronPython] pybench results for CPython and IronPython

2007-04-24 Thread Arman Bostani
I assume that IronPython is implemented with thread-safe data structures (i.e. there's no GIL). If so, then IronPython is at a disadvantage on single-threaded benchmarks like pybench. Just for fun, I tested System.Collections.SortedList against its thread safe (Synchronized) version. The latt

[IronPython] pybench results for CPython and IronPython

2007-04-20 Thread Arman Bostani
Thanks to Sanghyeon for running the benchmarks. To summarize his results, it seems like IP is pretty good at: comparing simple types, loops, function calls and float arithmetic. It performs pretty poorly at almost everything else! I guess its time to convert critical code sections to Boo. -

[IronPython] profiling ipy apps

2006-07-26 Thread Arman Bostani
Hello all, Is there a recommended process for profiling ipy applications? Understandably, the cpython profile module doesn't work (no sys.setprofile). Also, CLR Profiler isn't geared towards performance analysis. So, do I need to somehow run my ipy applications under VS 2005 Team Suite? Tha

Re: [IronPython] Cannot use logging module with ipy?

2006-07-19 Thread Arman Bostani
Peter, As a hack, you can get logging working as follows: import logging logging._srcfile = None -arman Dino Viehland wrote: > Not being a sports fan I can’t comment on the tension between the > Yankees and Mariners, but we definitely don’t have an implementation of > sys._getframe which is t

[IronPython] strange behavior with CLR types

2006-03-28 Thread Arman Bostani
The behavior of comparison with CLR types is not consistent. I'm using beta4 on Windows: >>> from System import * >>> UInt64.Parse('0') == 0 False >>> UInt32.Parse('0') == 0 False >>> UInt16.Parse('0') == 0 False >>> Int16.Parse('0') == 0 False >>> Int32.Parse('0') == 0 True >>> Int64.Par

[IronPython] thread pickling

2006-03-03 Thread Arman Bostani
Hi all, A while ago, our company worked with Christian Tismer to implement thread picking using his stackless technology. Its quite nifty in the sense that it allows you to things like thread checkpointing and migration. Given my very limited knowledge of CLR and IronPython's implementation,