10-25-2021, 08:53 PM
(This post was last modified: 10-25-2021, 09:22 PM by ChameleonScales.)
I just tried on the latest 2.99 dev flatpak and nothing seems to have changed in that regard.
After some more testing I'm pretty sure that a mask applied to a group will cause the xcf to contain a copy of the mask data for each layer (which can get extremely redundant if you have many layers under a group).
I attached to this post 2 files to show why I came to this conclusion:
This would also explain why in my first experiments I sometimes ended up with heavier "group" versions.
In a group version I could be using one "not so compressible" mask for the group whereas in the "non-grouped" version, even though I was using non-identical masks (meaning they collectively contain more data than a single one), they were individually more compressible. And since the group version duplicates the data, it makes a heavier xcf regardless.
Whether my conclusion is correct or not...
Is this a known issue and is there a plan to address this memory inefficiency?
This has been a deal-breaker for me. In fact I've avoided using groups in my work since my first post on this thread (more than a year).
After some more testing I'm pretty sure that a mask applied to a group will cause the xcf to contain a copy of the mask data for each layer (which can get extremely redundant if you have many layers under a group).
I attached to this post 2 files to show why I came to this conclusion:
- the first one contains 4 layers with 4 masks, all made of pure noise. All noise patterns have a different seed, making this file contain 8 uncompressible "drawables" (as gimp calls it).
- the second one contains the same 4 layers but this time only one mask applied to a group that contains the 4 layers, meaning this time there are only 5 uncompressible drawables.
This would also explain why in my first experiments I sometimes ended up with heavier "group" versions.
In a group version I could be using one "not so compressible" mask for the group whereas in the "non-grouped" version, even though I was using non-identical masks (meaning they collectively contain more data than a single one), they were individually more compressible. And since the group version duplicates the data, it makes a heavier xcf regardless.
Whether my conclusion is correct or not...
Is this a known issue and is there a plan to address this memory inefficiency?
This has been a deal-breaker for me. In fact I've avoided using groups in my work since my first post on this thread (more than a year).