[IronPython] IronPython startup time

Michael Foord fuzzyman at voidspace.org.uk
Fri Feb 26 17:56:39 CET 2010

On 26/02/2010 16:46, Ken MacDonald wrote:
> Hi,
> I have inherited an IP project. Customer is complaining that startup 
> time with no apparent progress takes quite a while, and would like 
> something to happen prior to the time that the login screen finally 
> appears. I have a splash screen, and have set it to splash prior to 
> the login screen, now something appears at about ~~ 12 sec. rather 
> than ~~15 sec. for the login screen, but is still kind of a long wait. 
> I've tried moving the splash screen earlier, but it dies of missing 
> resources; not sure just what. I'm wondering if there is a way of 
> defining a really minimal splash screen that requires next to nothing 
> to start up, and getting it to pop up in maybe 3 or 4 sec.?
We achieved this at Resolver Systems by embedding IronPython in a very 
simple C# executable (actually not so simple because it also does single 
instance remoting but that isn't relevant to this question). The exe 
displays the splash screen and then starts IronPython using the hosting API.

Almost all the startup time (which has improved dramatically with recent 
releases) is Python imports - so we have a parallel import system that 
allows us to post updates to the progress bar as the imports complete. 
Kamil released this code as open source:


On the other hand, putting the splash screen first in your IronPython 
code (before significant imports) should enable it to be displayed in 
under 3 seconds - so if that is currently failing you should be able to 
make it work by debugging the issue. There is no reason this approach 
fundamentally can't work.

All the best,

Michael Foord

> Ken
> _______________________________________________
> Users mailing list
> Users at lists.ironpython.com
> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com


READ CAREFULLY. By accepting and reading this email you agree, on behalf of your employer, to release me from all obligations and waivers arising from any and all NON-NEGOTIATED agreements, licenses, terms-of-service, shrinkwrap, clickwrap, browsewrap, confidentiality, non-disclosure, non-compete and acceptable use policies ("BOGUS AGREEMENTS") that I have entered into with your employer, its partners, licensors, agents and assigns, in perpetuity, without prejudice to my ongoing rights and privileges. You further represent that you have the authority to release me from any BOGUS AGREEMENTS on behalf of your employer.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ironpython-users/attachments/20100226/6afd3578/attachment.html>

More information about the Ironpython-users mailing list