[Opera-Linux] OK, what can I do about Opera's never-ending thirst for memory?!

Eirik Byrkjeflot Anonsen eirik at opera.com
Fri Jun 19 07:32:23 UTC 2009


Kenneth Crudup <kenny at panix.com> writes:

> On Thu, 18 Jun 2009, Daniel Eckl wrote:
>
>> I think I am puzzled by all these values... I just read 16,5MB and
>> 8,4MB? Where do I fail in interpreting the writings?
>
> I'm thinking these are the sizes of all the pixmaps the X-Server says
> the process has. I was hoping these would grow quite large, but that's
> not the case.

No, I'm pretty sure that is the size of all the pixmaps the X server
process has allocated on behalf of opera (i.e. the memory is allocated
in the X server process).

>
> BTW a few hours later, and I had to kill the NVidia-running Opera last
> night because it grew to a VM of 6GB and a res of 3GB and everything
> else I had running caused the system to thrash in swap (5.5GB of Opera
> was on the swap disk).
>
> However, the XVnc-running instance of Opera (a direct clone of that one
> running on the NVidia-based machine) is still hovering around the same
> 1045MB/750MB VM/Res figures as yesterday.
>
> It's *gotta* be either (something related to?) compiz (whichi isn't
> running on the XVnc box), the NVidia driver, or one of the libraries
> linked into Opera on behalf of the NVidia driver.

Definitely interesting.

Compiz and the server-side nvidia driver "should" not make much of a
difference, since none of that code is run in the opera process.
However, it will affect which messages are passed to opera (in
particular the order and the number of them), which could theoretically
trigger some bad behaviour in opera.  Possible, but it seems unlikely to
me.

On the other hand, the nvidia driver does replace the OpenGL libraries
that are linked into the applications themselves.  But I don't think
opera is using OpenGL direct rendering contexts (or any other OpenGL for
that matter), at which point I would expect that code to be inactive.

Though I guess it is possible that Qt is using OpenGL behind the
scenes...  I think the nvidia driver has an environment variable you can
set to force it to never use OpenGL direct rendering.  I wouldn't expect
it to make any difference to opera, but I would expect it to keep the
(application-side) nvidia code inactive.

eirik


More information about the Opera-Linux mailing list