[Okular-devel] [okular] [Bug 320753] Dynamic memory usage limit doesn't take into account virtual memory exhaustion

Fabio D'Urso fabiodurso at hotmail.it
Mon Jun 10 11:46:21 UTC 2013


https://bugs.kde.org/show_bug.cgi?id=320753

Fabio D'Urso <fabiodurso at hotmail.it> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEEDSINFO                   |CONFIRMED
         Resolution|WAITINGFORINFO              |---
            Summary|Okular crashed when         |Dynamic memory usage limit
                   |searching large document    |doesn't take into account
                   |                            |virtual memory exhaustion
     Ever confirmed|0                           |1

--- Comment #19 from Fabio D'Urso <fabiodurso at hotmail.it> ---
Yes, that's surely what makes the difference between a crash or not. I've done
some calculations.

On your 1920x1080 monitor each page is 1532x2167 pixels (according to the last
log you posted).
Since images are stored as ARGB that makes for 1532x2167x4 = 13,2 MB per page.
13,2 MB x 273 pages = 3,6 GB, which is above the 3 GB virtual memory limit.
Indeed, this last stack trace is Poppler failing to allocate memory.

I don't know how big images are on your 1280x1024 monitor because I have no
logs.
Assuming that page size is proportional to monitor width, the total memory
usage would be:
3,6 GB x ( 1280 / 1920 )^2 = 1.6 GB, which is well below the 3 GB barrier.
Feel free to post a log on your 1280x1024 monitor (no need to use valgrind) to
confirm/deny my calculations.

So it makes sense that we don't go out out of memory on your 1280x1024 monitor,
whereas we do on the 1920x1080 one.

To sum up, we have this bug:
 Our dynamic memory usage limit doesn't take into account virtual memory
exhaustion.

(In reply to comment #17)
> (Thanks a lot for all your help, by the way!)
Thank you for caring about okular!  :D

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the Okular-devel mailing list