You are currently browsing the category archive for the ‘Python’ category.

The availability of Visual Studio 2010 RC1 (which I don’t have yet!) has implied the release of IronPython 2.6.1 RC1 for .NET 4.0. At the same time, 2.6.1 is the updated release also for .NET 3.5sp1.

The interesting part is a sentence in the release page:

In addition, we’ve made a substantial improvement in import time. Not only does this reduce startup time, but can speed up the importing of large, definition-heavy modules by up to 50%.

The startup time is the big problem of IronPython.

I use IronPython to generate reports in PDF using the free ReportLab open source package. The startup time is quite long. Because of this, to develop a report I have my custom editor, in which the ScriptRuntime is loaded at startup, so I don’t have to wait every time to reload all packages.

Startup Time 2.6

I make some module import in the runtime as application starts, asyncronously. You see that the longest time is on reportlab.graphics.shapes that takes 9,3 seconds! Time can vary a lot, but the order is this.

Today I have installed IPy 2.6.1 and I have done the same test:

Startup Time 2.6.1

Now it takes 5.6 seconds: it’s about a 40% less! This is very good, because every release is gaining 40/50%…

The “Context AdventureWorks” that you see in the picture(s) that gain only 20% is a .NET DLL: it’s an assembly that contains Entity Framework classes and DataContext…

Good work guys!

Marco

My tweets

Follow

Get every new post delivered to your Inbox.