Xfce High Memory Usage

I recently got Manjaro Xfce installed and I’m curious about the base level memory usage. The document I read about Xfce on Manjaro, Install Desktop Environments - Manjaro, said that Manjaro Xfce only uses about 380MB of memory, but my fresh minimal install is using 1.2GiB of memory which is higher than Plasma which only used about 730MiB.

Is this the new norm for Xfce? Maybe there are some non-essential background processes that can be killed or maybe there are just some post install processes running in the background? CPU usage is still good and low at idle, between 0% and 2%.

No offense, but I really wish people would stop obsessing about their perception of how much memory the system allegedly consumes.

Let me start by saying this: unused RAM is useless RAM. The Linux kernel will make optimal use of the available virtual memory by caching and buffering. This makes the system much more responsive.

Cache and buffers are dynamically allocated, and the amount of cache and buffer memory in use will be adjusted on the fly, depending on the needs of the system. Therefore, not everything in RAM — or more broadly, in virtual memory — is application code and data.

Furthermore, the longer your system stays up, the bigger the cache will get, because every time you open an application, the kernel loads more information from the drive into virtual memory, so as to make the system quicker at opening files and applications.

As for unnecessary background processes that can be stopped, yes, there will probably be some of those, but this differs per use case. It all depends on who you are and how you use your machine. Manjaro therefore starts a number of things by default — sometimes because this is just the default configuration from the actual project developers upstream — and some of those could be disabled if you don’t need them.

But that’s just the problem: Manjaro has no way of knowing in advance who will need what. So a sane default setup is chosen that will work for most use cases. It is then up to the user to — after properly documenting themselves — tweak the startup process by disabling (or enabling) a number of system services.

GNU/Linux is not a consumerist platform like Microsoft Windows, Apple macOS or Android. It is a serious operating system for serious (and responsible) people. Everything is well-documented, and what you don’t know, you can learn — if not by studying, then from experience eventually.

:man_shrugging:

2 Likes

I’ve been using Linux for a while now and I’ve used various distros sometimes with Xfce, Gnome or Plasma, I’m sure they all use caching and buffering and this is the first time I’ve seen such high memory usage on Xfce just after boot and the document I referenced mentioned 380MB so it seems only natural to think perpaps there was a runaway process or something.

I have since reinstalled Manjaro Plasma and after the initial setup the Baloo file indexer was running for a while and consuming several hundred MiB of memory peaking around 1.8GiB. When it was done indexing files memory usage reduced to 1GiB. I thought maybe something similar was happening on Xfce, although CPU usuage suggested otherwise.

If that were the case, then your CPU load would reflect this.

My system, at this very moment… :arrow_down:

               total        used        free      shared  buff/cache   available
Mem:           15867        5923         492        1513       11300        9944
Swap:              0           0           0

 16:13:58 up 7 days,  1:44,  1 user,  load average: 0.48, 0.64, 0.53

Granted, I have a lot of stuff open…:

  • kmail
  • dolphin
  • konsole
  • yakuake
  • strawberry
  • telegram-desktop
  • kate (with 5 files loaded into it)
  • okular
  • gwenview
  • ksysguard
  • chromium (with 5 tabs)
  • kpatience

Yeah, that’s why I posted the question. Seemed odd to me that Xfce is now using more memory than Plasma. I get that modern operating systems dynamically allocate memory, but both Plasma and Xfce are caching and buffering and Xfce is usually billed as lighter weight.

I’m not chiding Xfce or Manjaro here, Manjaro has been a great OS for me, probably the best I’ve ever used. Just saying I don’t think I’m an idiot for asking the question is all.

That used to be the case, but Plasma has made great improvements in that regard over the years. I don’t think Plasma would be any heavier anymore than XFCE.

2 Likes

Can you show the output of top or htop ?

I’ve already reinstalled Manjaro Plasma. I wasn’t really looking for a ‘solution’ I just wanted to know if it was normal or not, if maybe someone here had recently installed Manjaro Xfce they could say “yeah my system showed about that after initial setup too” or “no my system showed a lot less.”

Prior to this I had Manjaro Plasma installed, been using it for over a year now, and was seeing around 730MiB at idle. Now that I’m seeing 1GiB I think it’s not so big a difference from the 1.2 I saw on Xfce and thought maybe I’d try switching back.

It’s really not a big deal, I just had some problems running Godot and Blender under Plasma and thought Xfce would work better.

Plasma, XFCE, GNOME, Cinnamon, MATE, Budgie, Enlightenment, Deepin, LXDE and LXQt are only desktop environments — graphical user interfaces with an integrated set of default applications. They have no effect on how well applications like blender or godot perform.

What does have an impact in that regard is what resources the application can tap into, and in the event of the two applications you mention here, this primarily means the graphics processor and the supporting software of the graphics stack.

Obviously, the graphics processor remains the same between these different Manjaro editions because it is part of your hardware, and the graphics stack is also the same. The kernel and kernel driver modules, the mesa libraries, the underlying system, it is all the same. The only difference is that graphical user interface, which — as I said — makes no difference to the application.

Blender ran fine up through the 3.3 series. Ever since 3.4 the 3D viewport flickers and then Blender crashes with no errors printed and no crash log. However; the problem seems to be resolved when turning off the Plasma desktop compositor.

Godot’s problem isn’t with the engine itself, but with scrollviews in the editor which scroll very slowly and choppily when using the mouse wheel. Not a problem in Godot 3, but became a problem in Godot 4. Works fine in Windows, but I rather don’t like the idea of using Windows.

And by slowly and choppily I mean I have to scroll the mouse wheel several clicks before the view scrolls a little bit.

I doubt a bit that plasma is that much lighter than XFCE. At best maybe they are on par. I have not tried plasma since many years, but mabox, a distro that is a manjaro fork runs with about 500 MB at boot, and it does not have a desktop environment at all, it uses openbox. So there is no way Plasma uses 700MB. maybe not all services were started.
My system currently boots XFCE with about 1.5 GB RAM and i have a lot of stuff installed and lots of scripts and services. So 1.2 on first install is pretty normal.

I made the experiment to try to run the analogues of Aragorn programs:
thunderbird, thunar, terminal, strawberry, viber, mousepad, okular, gwenview, chromium 4 tabs, kpatience, spotify: 4.3 GB used memory, so under load seems still a bit lighter than Plasma (similar usage at 6GB).

2 Likes

Actually the system on which I just installed Manjaro Xfce and then Manjaro Plasma is a new system. The system to which Plasma only ate up around 700MiB at boot I still have and still have Manjaro Plasma installed, I ran system updates on it on Thursday, got my new system on Friday.

The forum won’t let me embed images so I’m linking them from my webhost. The forum now also says I can’t post links, which is weird because I already posted a link in the first post on this thread, but now I can’t.

Here’s the system just after boot 0.70GiB:
https://www inventati.org/1337gallery/files/Screenshot_20230917_113506.png

And here’s the system after idling for a bit 0.69GiB:
https://www.inventati.org/1337gallery/files/Screenshot_20230917_113628.png

Anyway, thanks for letting me know that 1.2GiB is normal for Xfce under Manjaro.

Did you not notice that wiki information about Xfce is very out of date

Install Desktop Environments/Xfce - Manjaro Wiki
A 64 bit installation of Manjaro running Xfce uses about 390MB of memory. As of version 18, Manjaro has moved to the gtk3 version of Xfce

The screenshot is older (12 Oct 2012) and using Xfce application menu rather than Whisker menu

IMO an arbitrary measurement (with no context or methodolgy) of how much GB/GiB of RAM is in use after booting is not a useful metric for comparing DE’s

Your Memory Management Varies, all of the time
past performance does not guarantee future results
The value of investments can fall or rise

1 Like

Yes I did notice, that’s why I decided to ask if this was normal. It’s been a few years since I’ve used Xfce and 1.2GiB is double what I’ve been accustomed to in the past with other distributions. The wiki doc is out of date, but it’s not like it’s twenty years out of date. I don’t think it’s unusual for someone to look at a 218% increase in memory consumption and think maybe something was amiss.

There’s another thread on here in which someone is apparently experiencing a memory leak possibly in X11: https://forum.manjaro.org/t/xorg-memory-leak/141224

With the only documentation on the matter quoting 380MB don’t you think someone might look at over 3 times that figure and think, I dunno, maybe there’s a memory leak?

For future reference, the term “virtual memory” doesn’t refer to cashed or buffered data in memory. Virtual memory is the term Microsoft uses to refer to disk space that is allocated to act as memory in the event that the system needs more memory than the amount of installed RAM. Linux does the same thing, but they call it “swap space” rather than virtual memory.

Yes, but the text mentions Manjaro 18 which was released only four years ago.

P.S. After reading some of the other posts here such as Manjaro pinging servers in the background several times per second I’m starting to see that Manjaro is becoming one of the more dishonest distributions.

Swap and for windows a page file, are not quite the same thing as virtual memory.

Perhaps this will help:

Network Manager and systemd-resolv are pretty ubiquitous, it’s not Manjaro. You can disable the connectivity checks or choose to use something else.

" Software within the operating system may extend these capabilities, utilizing, e.g., disk storage, to provide a virtual address space that can exceed the capacity of real memory and thus reference more memory than is physically present in the computer.

The primary benefits of virtual memory include freeing applications from having to manage a shared memory space, ability to share memory used by libraries between processes, increased security due to memory isolation, and being able to conceptually use more memory than might be physically available, using the technique of paging or segmentation."

Virtual memory is a virtual address space which includes the physical (real) addresses mapped to addresses in memory, and the purely virtual addresses mapped to a storage device, through a swap partition, swap file, or on windows, a page file.

The point I’m making is that people who ask questions are not stupid. And you probably shouldn’t go around trying to make people feel stupid because they asked a question. And if that is your modus operandi then perhaps you shouldn’t be offering advice on a support forum.

From manjaro.org’s front page:
“Manjaro is a free and open source Linux operating system that emphasizes user privacy and control of their hardware. It is user-friendly and suitable for those new to computers, and can be installed on a wide range of devices.”

Yes, and if you had been monitoring the forum more closely, then you’d know that this description will probably be removed or changed in the near future, because that’s just marketing speak and it’s not true.

Manjaro is easier to install and use than Arch, but being based on Arch, it remains a technical distribution that not only requires periodic updating, but also periodic maintenance, and this is not something a consumer would want to do, nor what an absolute newbie would be able to handle — and the forum is full of evidence of the latter.