Re: [Inkscape-devel] Regarding memory usage when embedding pictures
Thanks a lot for replying, Jon !
Well indeed I tried to embed the pictures in the SVG. Let's say they'are about 2560*1920 resolution (some less some more). So : 2560 * 1920 * 4 * 35 (number of pictures) / 1024 / 1024 = 656.25 MB and 70 MB (size on disk) * 4 / 3 = 93.3 MB Total = about 750 MB Which is indeed the memory amount taken by OO.org, but Inkscape quickly fills my 4 GB of ram (minus what is eaten by KDE of course)
Well, this may be an expected behaviour actually, I just wanted to check if it had to be reported.
Thanks again ! Mahen
Le 07/02/2011 02:45, Jon Cruz a écrit :
On Feb 6, 2011, at 4:01 AM, Mahen wrote:
I tried to load my document again, and noticed Inscape was almost filling my 4 GB of ram. I tried to do the very same thing with OpenOffice draw and the memory usage was "only" of 0.7 GB.
I definitely guess Inkscape is not meant for importing tons of pictures, but I was wondering whether there was some kind of memory leak or waste triggered by this particular scenario and if you think I should make another bugreport ?
Yes, memory use was a major factor discussed when we were going over linked vs. embedded. If you were seeing this while linking in the images, we'll have a larger problem. On the other hand if the images were actually embedded, some such bloat was expected. This is part of why the consensus was to avoid switching to always embedding until we had such issues covered, but someone went ahead and flipped things in the code anyway.
To get a rough idea of memory use, just multiple image width in pixels by height in pixels times four and you get the rough minimum buffer needs. Also add in on-disk image file size times four and divided by three. This gives the string size needed for the XML string embed itself.
So the first question is are they linked or are they embedded. Second question is if you calculate the rough memory needs for all of those 35 images do they start to hit the limits of your machine?
Please let me elaborate a little more :
each time I add a 2592*1944 picture (2.2 MB jpeg, theorical memory usage = 19.22 + 1.65 = 20.87 MB) -> actual memory usage increases by 38 MB when linking picture and by 97 MB when embedding picture. -> after removing linked picture from the canva, only 22 out of 38 MB are restored
Conclusion : a LOT of memory is saved when just linking the picture. In all cases, memory usage is very high, but maybe those values are expected ?
Cheers & thanks again ! Mahen Le 07/02/2011 10:50, Mahen a écrit :
Thanks a lot for replying, Jon !
Well indeed I tried to embed the pictures in the SVG. Let's say they'are about 2560*1920 resolution (some less some more). So : 2560 * 1920 * 4 * 35 (number of pictures) / 1024 / 1024 = 656.25 MB and 70 MB (size on disk) * 4 / 3 = 93.3 MB Total = about 750 MB Which is indeed the memory amount taken by OO.org, but Inkscape quickly fills my 4 GB of ram (minus what is eaten by KDE of course)
Well, this may be an expected behaviour actually, I just wanted to check if it had to be reported.
Thanks again ! Mahen
Le 07/02/2011 02:45, Jon Cruz a écrit :
On Feb 6, 2011, at 4:01 AM, Mahen wrote:
I tried to load my document again, and noticed Inscape was almost filling my 4 GB of ram. I tried to do the very same thing with OpenOffice draw and the memory usage was "only" of 0.7 GB.
I definitely guess Inkscape is not meant for importing tons of pictures, but I was wondering whether there was some kind of memory leak or waste triggered by this particular scenario and if you think I should make another bugreport ?
Yes, memory use was a major factor discussed when we were going over linked vs. embedded. If you were seeing this while linking in the images, we'll have a larger problem. On the other hand if the images were actually embedded, some such bloat was expected. This is part of why the consensus was to avoid switching to always embedding until we had such issues covered, but someone went ahead and flipped things in the code anyway.
To get a rough idea of memory use, just multiple image width in pixels by height in pixels times four and you get the rough minimum buffer needs. Also add in on-disk image file size times four and divided by three. This gives the string size needed for the XML string embed itself.
So the first question is are they linked or are they embedded. Second question is if you calculate the rough memory needs for all of those 35 images do they start to hit the limits of your machine?
The modern datacenter depends on network connectivity to access resources and provide services. The best practices for maximizing a physical server's connectivity to a physical network are well understood - see how these rules translate into the virtual world? http://p.sf.net/sfu/oracle-sfdevnlfb _______________________________________________ Inkscape-devel mailing list Inkscape-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/inkscape-devel
participants (1)
-
Mahen