Jump to content

Long Start-up Time


Bob

Recommended Posts

A screenshot won't help here. 2.5 is not slower to startup compared to 2.1b. A lot of time was spent optimize 2.5's performance, especially its startup performance. You can measure the incurred pagefaults and CPU time: 2.5 uses about the same CPU time as previous verions, but about 1500-2000 fewer pagefaults (HUGE!). On my system it's 0.487 seconds CPU time (as per Process Explorer) and roughly 6500 pagefaults.

That said, Paint.NET is still dependent on .NET starting up, which can lollygag in a few situations:

1. Slow hard drive. Or it needs to be defragmented. Or both.

2. Low memory (256 MB is a bad place to be).

3. "Cold" startup. I call this "non-cached" : either you've just started up your computer, or have not run any .NET-based app in a long time.

4. Combination of 1, 2, and 3.

The tongue-in-cheek answer to the popular question, "How do I make my .NET app startup faster?" is "Don't be the first app that starts up the .NET runtime!"

I can guarantee that the "thumb twiddling" you mention is pure disk I/O -- look at the hard drive light on your system: it's probably going crazy. I recommend defragmenting your hard drive at least, and if it's still a bother you might check out your system specs and determine if it's worth it to upgrade your RAM. I recommend having at least 512 MB in general, and not just for Paint.NET.

The Paint.NET Blog: https://blog.getpaint.net/

Donations are always appreciated! https://www.getpaint.net/donate.html

forumSig_bmwE60.jpg

Link to comment
Share on other sites

  • 6 months later...

I have the same problem: from second the process is launched it takes full 14-16 seconds until actually something happens...

(I'm posting this here, since it's the only place some solutions already have been suggested)

I'm using the currently newest version (2.63) and I don't know any older ones to compare it with. System specs surely are sufficent (ram too, 1280 MB).

During this starting delay neither my hard disk is working nor is the processor used at all. As soon as these 15 seconds are over the program is launched within a fraction of a second.

This .NET Framework first launch delay (which surely existed in ver 1.1, not sure if in 2.0) doesn't seem to matter much at all, since starting it the second time (no matter if an old instance of the program is still running) takes just as long... :?

And to top the problem off: a lag from appropriate exactly the same time occurs during using the program once per instance. There are only two events i figured out so far which trigger this: undo an action (only sometimes:?) and launching an open or a save file dialog (every time!)

After this lag has once occured (beside the one when launching) this instance of the program works properly and fast. During these second lags there is also no disk or processor activity.

I hope you can fix this somewhen...

oh... btw, i'm using winxp home sp2, .net framework 1.1 sdk was installed earlier than the ver 2.0 (only runtime) (maybe this matters) and i've got msvs 2003 installed...

Link to comment
Share on other sites

I think I've found another explanation for this problem which a few people have seen, even on high end systems.

1. We digitally sign all of our binaries with Authenticode, using a code signing certificate

2. The .NET Framework always verifies Authenticode signatures as part of its assembly (*.dll *.exe) loading process (this is something I did not know until recently)

3. Verification requires the use of a Certificate Revocation List (CRL).

4. The CRL must be updated, and in fact it has to be updated quite often. This is done by downloading a new CRL from an Internet address

5. If you have Paint.NET blocked from accessing the Internet via your firewall software, then (4) will fail, but it will take several seconds to do so, thus causing a large startup performance penalty.

I'm looking to put out an update (v2.64) that addresses this, but in the meantime you can make sure that Paint.NET is not blocked from accessing the Internet. It might take me a week or two to get v2.64 published, because of the holiday and some logistical issues we've been having with our servers.

(I was actually noticing a 5 second startup delay on some very fast, pre-release Intel hardware -- a 2.4 GHz Conroe -- that had not yet had its Internet connection set up.)

The Paint.NET Blog: https://blog.getpaint.net/

Donations are always appreciated! https://www.getpaint.net/donate.html

forumSig_bmwE60.jpg

Link to comment
Share on other sites

Wow :shock:

After granting that prog internet access there are no more lags at all :o

Of course it'd be nicer if it wouldn't have to verify those assemblies every time :wink:

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...