A Memory Comparison of Light Linux Desktops

After I install a new version of Linux, I usually take a good look at the screen. Does it have a task bar? Can I find my window after it was minimized? The direction some desktops are going is not clear. Making it easier for current users or for the people coming from Windows or Mac is not a goal anymore. User complains are dismissed, chalking it up to the fact that people don’t like change.

Fortunately, in Linux we have plenty of other choices, and we do like change. We have no need to keep using desktops we don’t like.

I will describe some of choices in this article, and I’ll attempt to measure the RAM memory requirements. I use free command in an xterm before and after the graphic environment is started on a separate X server (Xephyr). free command prints on the screen data made available by Linux kernel. The kernel knows at any moment how much memory is using and how many buffers are available.

The tool I use to set it all up is virtenv. It configures a Xephyr xserver running OpenBox in a Linux kernel container (LXC). I shut down OpenBox and install the new window manager or desktop environment. I run the WM/DE as it comes up by default, without any kind of customization. The container works in a separate filesystem, and it will not overwrite the real filesystem on my computer. The computer is an older 64-bit machine, running Ubuntu 12.04.

Joe’s Window Manager

JWM is a light-weight window manager for the X11 Window System. A small memory footprint makes it a good choice for older computers and less powerful systems. Barry Kauler’s excellent Puppy Linux is based on JWM.

You install it as sudo apt-get install jwm on Debian/Ubuntu, or as yum install jwm on Fedora. I takes about 3MB of memory to run.

JWM window manager

JWM window manager

*box

This is a series of three window managers. BlackBox is the original, Openbox and Fluxbox are forks.

BlackBox is comparable to JWM, and loads in about 3MB of memory.

Openbox is rarely used stand-alone, it is however the window manager of choice in a number of other desktop environments such as Gnome, KDE and LXDE. It runs in about 7MB of memory. CrunchBang is and example of distribution based on Openbox.

Fluxbox is popular in many Live CDs such as Knoppix STD and GParted. It is currently the default window manager of PCFluxboxOS, Linux Mint Fluxbox CE and Salix OS Fluxbox. It runs in 16MB of memory.

Install them on Debian/Ubuntu as sudo apt-get install blackbox openbox fluxbox, or yum install blackbox openbox fluxbox on Fedora.

Fluxbox window manager

Fluxbox window manager

Dynamic Window Managers

A dynamic/tiling window manager adjusts the size and position of the windows so there is no overlapping and no space lost between them. This is in sharp contrast with the normal window managers which float and overlap windows. The distinction is not as strict today as it used to be, most modern tiling window managers can easily float windows. Some examples are dwm (1MB RAM), i3 (3MB) and awesome (9MB).

Install them as sudo apt-get install awesome i3 dwm on Debian/Ubuntu, and as yum install awesome i3 dwm on Fedora.

awesome Window Manager

awesome Window Manager

E17

This is a beautiful desktop environment, the graphics just surpass everything else in this article. It is highly configurable and very fast. It runs in 35MB of memory in my tests.

Install it as sudo apt-get install e17 on Debian/Ubuntu, or as yum install e17 on Fedora.

E17 Desktop Environment

E17 Desktop Environment

LXDE

The Lightweight X11 Desktop Environment was specially designed for computers with low hardware specifications, such as netbooks, mobile devices (e.g. MIDs) or older computers. In my opinion this is the DE that had the most to gain from Gnome 3 debacle. You can get today full major distros based on LXDE, such as Lubuntu and Fedora LXDE Spin. Usable and slim, LXDE runs on my computer in 36MB of memory.

Install it on Debian/Ubuntu as sudo apt-get install lxde, or yum install lxde on Fedora.

LXDE Desktop Environment

LXDE Desktop Environment

Xfce

Xfce is a desktop environment based on GTK+ 2 toolkit. It aims to be fast and lightweight, while still being visually appealing and easy to use. Xubuntu and Fedora Xfce Spin are two of the distros featuring Xfce.

It runs in about 70MB of memory, which is a lot more than LXDE. Install it as sudo apt-get install xfce4 on Debian/Ubuntu, and yum groupinstall xfce on Fedora.

XFCE Desktop Environment

XFCE Desktop Environment

Conclusion

People use computers in different ways for different tasks. Window Managers and light Desktop Environments are sometime the only choice for less powerful systems or for places where every bit of memory counts (gamers, programmers etc.). In part 2 and part 3 of this article I look at some other window and desktop managers, including KDE, Unity and Gnome 3.

WM/DE Memory (MB)

WM/DE Memory (MB)

Links:

TinyWM, 9wm, miwm, wm2, dwm, Ratpoison, TWM, xmonad, JWM, i3, Blackbox, Sawfish, IceWM, PekWM, Openbox, Window Maker, awesome, FVWM, Fluxbox, Mutter, E17, LXDE, KWin, MATE, Trinity, XFCE, Cinnamon, Razor-qt, Gnome 3, Unity, KDE

Related Posts

66 thoughts on “A Memory Comparison of Light Linux Desktops

    1. netblue30 Post author

      Thanks. I did try a few days ago the default E17 package from Ubuntu 12.04. It works fine on the desktop, and it is very fast. I would say it runs in less than 40MB of RAM, much less than XFCE.

      The problem was I couldn’t get it to work under Xephyr xserver. I’ll compile it myself, pick up a new version if it is available, and try it again. It is definitely in competition with the rest.

      Later: I’ve managed to get it running somehow, thanks!

      Reply
  1. wbrokenbourgh

    Thanks for this. I did my own comparison last night right before seeing this article, and it pretty much echos your results.

    The only issue I have with JWM is that there’s no easy way to center all windows. With Fluxbox and Xfce4 you can. Ah well, time to get hacking on the source code, I guess. :-)

    Reply
  2. CFWhitman

    You could make a pretty good argument that XFCE gains the most from the Gnome 3 “debacle.”

    With the exception of Gparted, all the Fluxbox based distributions you mentioned are old versions for which the development seems to be stalled. One currently developed Fluxbox based distribution is Salix OS Fluxbox (though even that has a newer release of the XFCE version).

    Incidentally, Crunchbang is a distribution with Openbox as the default desktop (with tint2 thrown in to provide a panel).

    Reply
  3. Pingback: Gestores de ventanas ligeros: ¿cuál consume menos memoria? | AleQwerty Blog GNU/Linux

  4. Pingback: A Memory Comparison of Light Linux Desktops |

      1. Michael Leibowitz

        free is not telling you the real story here. You are mapping GPU memory into real memory space. If you really want to know how much memory it takes, you need to figure out how much free space there is. The amount of free space is really about when the kernel makes a trade-off into swap.

        The way I’ve done this is to write a program that progressively eats more and more ram (malloc, mlock). Then sync and drop caches, and run the memory eater. Count how much memory can be eaten before the system swaps. That is the baseline. Reboot and run the desktop before running the memory eater.

        There will be noise. You should automate it and do several repetitions to filter out the noise.

        This sounds like a lot of work, but this is the canonical way to know the truth.

  5. Jan

    Thank you for this article. Very interesting. If I may suggest another WM: i3 is my choice for more than a year now. sudo apt-get i3 will get you a slightly outdated version, but a comparison would still be interesting. (see i3wm.org for more)

    Reply
  6. R. Kyle Murphy

    Interesting write up, in particular it’s surprising how many of the “lightweight” managers are actually on the heavy side. I’d be interested to see what XMonad clocks in at, but I’d guess it’s probably similar to DWM. Are these measurements with the out of the box configurations under Ubuntu?

    Reply
    1. netblue30 Post author

      Xfce in particular was a shock to me. Couldn’t get xmonad working so far.

      My computer is a regular Unity 12.04, where I’ve replaced Unity with LXDE and cleaned up a bunch of useless processes. I do the measurements under some sort of light virtual machine in Linux containers (LXC).

      Reply
  7. Pingback: A Memory Comparison of Light Linux Desktops | My Daily Feeds

  8. Pingback: Links 21/3/2013:Ubuntu to Halve Support Length, Valve Share for GNU/Linux Climbs | Techrights

  9. mongrelion

    Thanks. This is a very simple yet fascinating post.
    Do you mind adding to your tests awesome window manager? I’ve used it in the past and is quite fast and lightweight, although it takes a while to get used to it, just like ViM, but once you learn how to use it, you start loving it :)
    http://awesome.naquadah.org/

    Reply
  10. vrodic

    What happens with XFCE if you turn off the compositor?

    Also, testing unity, kde and gnome3 would help, so we can compare how light the others are really. Thanks for doing this.

    Reply
      1. vrodic

        Under settings menu, there is: “Window manager tweaks”, the last tab is Compositor, there you can turn it off.

        Thanks.

        Vedran

  11. Pingback: Linux News Watch | A Memory Comparison of Light Linux Desktops | l3net – a layer 3 …

  12. notzed

    Pity they are almost all just clones of the microsoft windows 95 interface, which is so yuck. xfce has loads of themes, although almost all are just blue with the microsoft layout.

    A window manager is just part of a ‘desktop environment’, so the comparison isn’t entirely equitable .

    Reply
    1. netblue30 Post author

      Yes, but some people just install the window manager and don’t bother to put an “official” desktop environment on top of it. They end up running their programs directly in the window manager. In this case the comparison is valid, the window manager acts as a desktop manager.

      Reply
  13. nims11

    “Openbox is rarely used stand-alone,”
    I use openbox stand-alone and after a bit of initial effort, it is as usable for me as any full fledged desktop environment.

    Reply
    1. netblue30 Post author

      Openbox is an excellent choice to build a desktop. It is already integrated with dbus and dconf, which means you can go ahead and use on your desktop most applications from Gnome and KDE.

      Reply
  14. Robin

    Please add MATE and Cinnamon, these are also gaining popularity quickly.
    I’m running MATE 1.4 on Linux Mint 14 and I’d really like to know where it stands. I’d say somewhere between Unity and XFCE.

    Reply
  15. lionhater

    On i3 Sandy Bridge + built-in intel GPU + 4GB RAM (no swap) + SSD, heavy DEs use a bit more memory, but at the end it’s negligible and everything is instant; only Gnome3, Unity and Cinnamon weren’t instant when I’ve last tried them. And those three have consumed more CPU which was bothering me really as this would lead to heating and so noisier fans (though a regression in power handling in the kernel itself had a much bigger impact on this). KDE (without the Akonadi/Nepomuk/Activities etc. cruft) in my experience has seemed in this respect even better than Xfce, let alone the above three; and not heavier than the lighter WMs. Though all these observations are based just on Conky.

    Reply
  16. Pingback: 「Linux デスクトップメモリ使用量の調査」が超大作でスゴイ | ソフトアンテナブログ

  17. Pingback: Ambiente grafico più leggero | Nazion Linux

  18. Pingback: measuring performance gain on procees

  19. Pingback: How to define hotkeys in IceWM

  20. Pingback: Show Notes #119 « Linux in the Ham Shack

  21. Pingback: 35 Unix 25.03 #3;4 | Arvutid ja arvutivõrgud

  22. Pingback: A Memory Comparison of Light Linux Desktops | l3net – a layer 3 networking blog « UncleDan's Corner

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s