Rick Brewster Posted January 22, 2020 Share Posted January 22, 2020 I've been working on 4.2.9 for the last month and a half, and really put some work into some big improvements for performance and memory usage. These improvements cut across almost everything you can do in the app, so having a lot of participation in the alpha and beta builds will be really important. Please install!!! 😁 Memory usage is way down, especially when opening many images. Undo/redo should be a lot faster. Finishing/committing actions with most tools should be a lot faster. Effect rendering, particularly when you have a complex selection, should be much more responsive. A lot of these optimizations will scale with CPU core count (more faster CPU = more faster PDN), but should also show great improvements on low-end systems (e.g. dual core CPU, low-power laptop). It's win-win! To get this update, make sure you have "Also check for pre-release (beta) versions" enabled in Settings, and then click on the Check Now button. (Unfortunately alpha/beta releases are not currently available for the Microsoft Store version of the app). Changes since 4.2.8: Reduced overall memory usage (commit size) by up to 1/3rd by eliminating the use of and need for a per-image scratch buffer Greatly improved performance when finishing actions of most tools by employing a shared cache between the render and commit code paths Reduced memory usage when working with many tools by consolidating homogenous tiles (those that are comprised of a single pixel value) Significantly improved performance of most history actions (commit, undo, redo) by switching from NTFS compression to multithreaded LZ4 compression for history files Significantly improved performance of undo/redo with very complex selections (like from the Magic Wand tool) Improved performance of Image -> Flatten (also affects flattening when saving) Improved performance of the Invert Colors and Desaturate adjustments by disabling hardware acceleration for them (too much overhead in copying tiles to the GPU for such trivial rendering kernels) Improved performance when saving by moving thumbnail rendering for the File -> Open Recent menu to a background thread Reduced memory usage when printing, and removed a rare crash that would happen if the scratch buffer couldn't be acquired Added a "busy spinner" to the canvas when using the Magic Wand and Paint Bucket tools Improved performance of effect rendering when a complex selection is active (improved caching) Fixed a layout bug with the image list button Fixed an error that prevented saving some images as JPEGs if they had EXIF Interop metadata (PropertyNotFoundException) Fixed a crash when running on a CPU that supports AVX but with an OS that is configured to not support it (via bcdedit /set xsavedisable 1) Fixed a crash when pressing the spacebar after switching to a tool but before it has received any mouse input events Fixed a rare crash when opening the Levels adjustments with certain types of selections Fixed a crash when checking for updates with an expired alpha/beta build Fixed a crash (FileLoadException) when DLLs are not updated by the updater. Updated WebPFileType plugin to version 1.3.2.0 (thanks @null54) I am hoping/planning to push out the final release by the end of January. Enjoy! 3 2 The Paint.NET Blog: https://blog.getpaint.net/ Donations are always appreciated! https://www.getpaint.net/donate.html Link to comment Share on other sites More sharing options...
toe_head2001 Posted January 23, 2020 Share Posted January 23, 2020 3 My Gallery | My Plugin Pack Layman's Guide to CodeLab Link to comment Share on other sites More sharing options...
Ishi Posted January 29, 2020 Share Posted January 29, 2020 What exactly is the "busy spinner" addition? Link to comment Share on other sites More sharing options...
Rick Brewster Posted January 29, 2020 Author Share Posted January 29, 2020 If the Magic Wand or Paint Bucket tool takes more than a second or so, it will add the busy spinner to the canvas where you clicked. I find it works better than the marquee in the status bar. The Paint.NET Blog: https://blog.getpaint.net/ Donations are always appreciated! https://www.getpaint.net/donate.html Link to comment Share on other sites More sharing options...
Rick Brewster Posted January 29, 2020 Author Share Posted January 29, 2020 Locking this thread -- new build shortly! The Paint.NET Blog: https://blog.getpaint.net/ Donations are always appreciated! https://www.getpaint.net/donate.html Link to comment Share on other sites More sharing options...
Rick Brewster Posted January 29, 2020 Author Share Posted January 29, 2020 7 hours ago, Ishi said: What exactly is the "busy spinner" addition? to elaborate on my response above, an easy way to see this is to open a very large image and use the Magic Wand or Paint Bucket in it If you need an image that works well, create a 20480 x 20480 image (or larger/smaller depending on how much RAM you have) and do an Effects -> Render -> Mandelbrot. Then, click with the MW in the big white area near the bottom. The Paint.NET Blog: https://blog.getpaint.net/ Donations are always appreciated! https://www.getpaint.net/donate.html Link to comment Share on other sites More sharing options...
Recommended Posts