Jump to content

Paint.NET v4.0.10 is slower than v4.0.9


mkp
Go to solution Solved by Rick Brewster,

Recommended Posts

I notice that Paint.NET was slow on Windows 10 compare to Windows 7 on the same machine(i7 6700 & 16GB & ssd). Btw I had dual boot so I did a direct comparison and I notice that in Windows 7 the cpu usage was 100% on the other hand on Windows 10 the cpu usage was like 50-65% on the same exact task, as a result the same task X on w10 it takes 80 seconds complete and on w7 only 50 seconds .(btw I work with high rez images 18000x900 with multiple layers that is why speed is important to me)

My fresh windows 10 installation perform as it should without any problems, except Paint.NET but still I think is something wrong in my end, I don't think after a year Paint.NET cant release a version that work anything less than perfect on windows 10.

 

any suggestions?

Edited by mkp
Link to comment
Share on other sites

For the Win10 machine that is slower, is it a "fresh" Win10 installation or is it an upgrade from Win7 or 8/8.1? If an upgrade, have you done a Paint.NET update since the upgrade?

 

And are you using the exact same version of Paint.NET on all of these? A few versions ago, I changed the policy for the internal worker thread pool so that it doesn't take HyperThreading into account for the number of threads to create. In other words, a 4 core system will always use 4 threads, whether it has HyperThreading or not (it will NOT use 8 threads). I found that this gave a much better balance for Paint.NET's performance versus allowing the rest of the system to be responsive and usable (e.g. "I can't move the mouse" vs "Oh good the whole system is nice and responsive" while rendering a long/large effect). If this is the culprit and is affecting performance that much (80 vs 50 seconds), then I may need to look into that some more.

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

It is "fresh" windows 10 installation not an upgrade, and Paint.NET version is 4.0.10

just now realized that in the windows 7 had the 4.0.9

 

so maybe that is why, I will download the 4.0.9 on windows 10 and see.

 

btw with the 4.0.9 on w7 was very responsive even with the cpu 100%

Edited by mkp
Link to comment
Share on other sites

Yep it turns out that the problem is the 4.0.10 version

 

4.0.9 on windows 10 runs as good as the 4.0.9 on windows 7

 

I will stick to the 4.0.9 forever then, because the performance hit of the 4.0.10 is too noticeable.

Link to comment
Share on other sites

This is across multiple systems, correct? Please tell me exactly what type of CPUs are in each system, e.g. Intel Core i7-6700K or Intel Core i5-6600K (whatever Paint.NET says in Settings -> Diagnostics).

 

Don't stick with 4.0.9. If the performance is reduced this far, then it's a bug.

 

The thread pool policy changed in 4.0.7. There's not going to be any difference between 4.0.9 and 4.0.10.

 

However, in 4.0.10 I fixed the effect renderer so that it doesn't create its own, separate threadpool. Which means it's more directly competing for CPU time with the work items that update the image (layer composition) as the effect rendering progresses. Before, the competition between these was handled by the Windows thread scheduler. My guess is that the layer composition is happening "too often", and should be chunked up a bit more.

 

Basically, more CPU time for effect rendering and less for the work required to update the screen to show the effect's rendering progress.

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

Also, in order to analyze this, I need to know a few more things.

 

* Exact image size, in pixels, of the image you're working with

* Number of layers

* What effect(s) are you using, and what settings are you using with them

 

With that information it should be a simple matter of doing the same thing on my system while taking a sample profiling trace and then I can look at what's happening in Windows Performance Analyzer.

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

I only have one PC i7-6700K & 16GB, the 4.0.9 version works as it should, but the 4.0.10 only use 50-65% of the cpu as a result being slower, according to my measurements it is around 25-30% slower than the 4.0.9.(btw the 80sec vs 50sec was a typo I meant 80sec vs 60sec, and that was the TjacksonEffects.dll)

 

image size: 18600x9300

Number of layers: 12

I mostly use plugins but the performance hit was the same with effects/tools that was already there (even the basics, resize, flatten, open image, etc)

Link to comment
Share on other sites

The CPU usage % being different probably won't matter too much. HyperThreading makes the reporting and analysis of that very hazy. If you have HyperThreading and have >50% reported in Task Manager then Windows is almost assuredly using all of your physical cores.

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

I noticed that this version is slower too, but haven't run any thorough tests. Also, I just upgraded to Win10 in the last few days, so I wasn't sure if that was part of it. I have an 8 core AMD CPU in this system. I do make use of a fair number of plugins.

 

I can afford to wait a few seconds longer, so I'll just wait until a new version comes out.

 

Thanks for all your effort, Rick!

Link to comment
Share on other sites

  • 2 weeks later...
  • Solution

Okay, confirmed and fixed for 4.0.11

 

I made an image of the same dimensions, 18600x9300 pixels, 12 layers. Then I did a Mandelbrot fractal at the default quality level of 2:

 

4.0.9: 1m 16s

4.0.10: 2m 4s

 

4.0.11, using 1 thread per physical core (same as 4.0.10): 2m 4s

4.0.11, using 1 thread per logical core (same as 4.0.9): 1m 11s

  • Upvote 3

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

  • toe_head2001 changed the title to Paint.NET v4.0.10 is slower than v4.0.9
  • Rick Brewster locked this topic
Guest
This topic is now closed to further replies.
×
×
  • Create New...