It seems I'm regularly trapped when trying to answer the "which desktop environment ist the best suited for me" question. A few months ago I was thrilled by XFCE (currently 4.4.1 on top of Ubuntu 6.06) on my search for a lightweighted, however useful window manager/DE. Unfortunately, only after getting used to all the nice stuff it offers I found out about the disadvantages: After a session runs a few days my machine with 2GB RAM and 4GB swap is mainly spending time with paging activities.
I am interested in learning how others live with that problem, what functions they use/beware of, what workarounds the implement ...
First, I started using a script killing off xfce4-panel each time the screen lock gets active (you don't use a panel as long as the screen is locked, do you? :-)) and re-starting it when the screen was unlocked. Great, that stopped xfce4-panel growing indefinitely (well, until processes start dying from memory starvation, so not really indefinitely). After upgrading to 4.4.1 (found some hints that the memory leaks were solved - that wasn't entirely true, it seems) I found out that xfce4-panel still grows and re-activated my panel killer. Main disadvantage: Many changes to panel configuration seem to not be saved immediately - thus after a panel-kill/re-start round old configuration is restored. Quite funny, so I can only savely change configurations when I freshly login (once every few weeks, unless the desktop crashes again ...) and therefore can directly logout and re-login again. Maybe I should dive into the .config/xfce4*-files, but actually gave up fvwm because I found it too time-consuming to read (partially non-existing) manuals each time I wanted to make a simple configuration change.
Ok, today I found out that killing panels every now and then isn't enough and found some hint that xfce4-desktop is leaking, too. So, I've just disabled desktop management in the settings manager - well, I do not necessarily need those desktop icons.
However, I actually find the menu more useful than starting each application from the command line, so I didn't apply the suggestion to just remove the menu-plugin from the panels (yet).
Are there other measures to consider?
You should try to find out what programs leak memory. And if possible when.
top shows used memory and helps you there.
Panel itself probably does not leak, I believe it is some of its plugins.
You might want to remove them one by one until you fin dthe one
which is quilty.
Then you just should file bugs or avoid the things that leak it.
My system does not leak memory. I have 256M and I am sure I would see
if memory gets lost somewhere.
As I said: xfce4-panel does leak and it seems to be a known bug (see bug database). More specifically, the menu-plugin is supposed to be the leaking part of it. Also, xfce4-desktop leaks are documented in the bugs database. While I have no problem just disabling desktop management, I do not want to avoid menu-plugin (unless there's a replacement).
Looking at top does not always reveal the true source of the problem - for instance, the xfce4-panel leak seems to rather cause X11 resources (cache) to be allocated. You have to have a look at xrestop rather than top in order to identify the leaking process.
Actually I do not have the time to track all those down (sorry, that takes much time and regarding desktop environments, I am a mere user and not willing to become a developer - I've got my own projects). I know there are leaks that are documented out there (i.e. see google) and I was hoping to share some hints on what actually to beware of in order to not suffer from leaks.
So, knowing that people are actually using xfce without being hit by memory problems is also some hint ... do you keep sessions open for a long time (means: weeks)?
Of course, if a process eats up only a few megs a day it'll take some time until you notice and if you re-start it before that delay you won't notice at all. Also, since it takes some time to notice, it is difficult to tell what initially kicked off the problem, since it might be some action performed seconds ago as well as days ago.
I've personally found Ubuntu to have dodgy memory management, regardless of DE. While Ubuntu 7.10 may have a lot of bugs in it's own right, it's handling Firefox/gecko memory consumption; Xfdesktop memory consumption; xfce4-panel memory consumption and WINE memory consumption better than previous releases. From my own experiences, 7.04 appeared to be the worst release for chewing up RAM since I started using Ubuntu with 6.06.
Maybe people logoff and shutdown the system during night so that not many people
experience these problems. I for example do that. Perhaps the best workaround?
fatcat: Well, that explains why you do not face any memory problems. I do not think it is a good workaround for me, however - I like to continue work just where I left it and I like my computer to be ready to be used any time. I even prefer suspend/resume on my notebook over shutdown/reboot. If I have to choose to either do without some nice features or without stability, then I choose to keep the stability and give up the nice features.
etnlWings: Maybe you're right. I think, a number of problems might be made worse depending on the Xorg version.
TomW: I thought the point of session-management was to allow you to take off from where you left last time you logged off. Next log-on Xfce's session maanger (optional) would re-open applications with the documents you had open in them. Don't know how far this really works (only use it for Epiphany), but maybe a try?
Session managers will not ever restore the exact state your computer was in when you left it - and I think that's rather good! Ok, I give you a plausible example: Start your browser, log in to your online banking account, then shutdown your machine and immediately boot it again, log in. Is your online banking session restored? Would you find it ok if it were restored? Well, that was obvious, and please do not concentrate on this example, since there are plenty of analogue cases (for instance, I do not want a session manager remember remote systems root password - but it would need them in order to restore remote system administration sessions, for instance a session manager will never be able to start 10 terminals, each with a shell, each of them having the shell history set to what it was before shutting down, 2 of them running vim sessions, 4 ssh sessions, one being chrootet, etc.).
BTW: Found the solution for the panel not remembering its configuration when killed and restarted: You need to kill it via "xfce4-panel -x". Actually what I'm doing is quite similiar to logging off and logging on again - however without terminating anything else but XFCE components :-)
I was having more or less the same problem. Sometimes I run calculations with a sh script, starting up a program > writing results > that about 3000 in a row. I noticed that the XFCE4 process manager has quite a large memory leak. If it's active the memory goes full in about a day. If I disable the process manager then the memory consumption remains roughly the same over the 3 to 4 days that the computer is running. Haven't tried longer.
I replaced the Process manager with the Gnome system Monitor and the problem was gone, while I could still list my processes (Xubuntu 7.04). Currently running Xubuntu 7.10, and I noticed that here the process manager is already replaced by the Gnome system monitor...