| Up to WM Report |
|---|
Window Managers Memory Usage
How much memory does your window manager use? You can check yourself with
the command ps -ao comm,size,rss,vsize. I have tried to note
where the window manager has other applications it runs. Memory management
in Linux is quite complex, and I don't feel competent to explain the exact
nature of "size," "rss," and "vsize." Suffice to say that some of them
include not only all the memory used by the app, but also memory used by
all libraries used by the app - which means that if the WM has subordinate
apps, a library that's loaded once may be counted several times. Read up
on it. You can also check how many libraries your WM uses with ldd
$WMexecutable.
Click on the column header to sort the table by the data in that column.
|
|
|
| Window Manager | Version | Executable(s) | size 32-bit |
rss 32-bit |
vsize 32-bit |
size 64-bit |
rss 64-bit |
vsize 64-bit |
Number of Libraries |
Notes |
|---|---|---|---|---|---|---|---|---|---|---|
| 9wm | 1.2-8 | 9wm | 244 | 1112 | 2852 | 0 | 0 | 0 | 8 | |
| aewm | 1.3.12-2 | aewm | 380 | 2780 | 6468 | 0 | 0 | 0 | 15 | |
| aewm++ | 1.1.2-4.1 | aewm++ | 272 | 1668 | 4028 | 0 | 0 | 0 | 11 | |
| Blackbox | 0.70.1 | blackbox | 540 | 3756 | 6464 | 0 | 0 | 0 | 19 | Blackbox makes little sense without bbkeys for keybindings: it has similar memory usage measures. |
| clfswm | 2007-03-02 | clisp | 5588 | 6244 | 11412 | 0 | 0 | 0 | 3 | The library count is on clisp, the interpreter, because the WM is a script. This probably doesn't count the required libraries properly. |
| dwm | 4.7-3 | dwm | 244 | 1356 | 4072 | 0 | 0 | 0 | 7 | |
| Enlightenment | 1:0.16.7.2-5 | enlightenment | 1592 | 4500 | 8776 | 0 | 0 | 0 | 18 | |
| firebox | 0.3 | firebox | 412 | 3372 | 6268 | 0 | 0 | 0 | 19 | |
| Fluxbox | 1.0.0+deb1-5 | fluxbox | 1220 | 4792 | 8588 | 0 | 0 | 0 | 23 | |
| Fluxbox | 1.0.0+deb1-7 | fluxbox | 0 | 0 | 0 | 1672 | 6124 | 60224 | 24 | |
| flwm | 1.02 | flwm | 424 | 3352 | 6112 | 0 | 0 | 0 | 20 | |
| Icewm | 1.2.30 | icewm | 644 | 3980 | 6788 | 0 | 0 | 0 | 26 | |
| Ion 2 | 20040729-2.1 | ion2 | 656 | 2304 | 3732 | 0 | 0 | 0 | 13 | |
| JWM | 1.5 | jwm | 416 | 2656 | 4736 | 0 | 0 | 0 | 19 | |
| Karmen | 0.11 | karmen | 256 | 1200 | 2812 | 0 | 0 | 0 | 9 | |
| LarsWM | 7.5.3 | larswm | 260 | 1184 | 2784 | 0 | 0 | 0 | 8 | |
| lwm | 1.2.1 | lwm | 388 | 1360 | 3308 | 0 | 0 | 0 | 10 | |
| Matchbox | 1.1 | matchbox-window-manager | 644 | 3040 | 5652 | 0 | 0 | 0 | 22 | A Matchbox session runs not only "matchbox-window-manager" (numbers shown here), but also matchbox-panel (660, 2928, 5528), mb-applet-menu-launcher (588, 2844, 5460), mb-applet-clock (536, 2736, 5400), and the largest, matchbox-desktop (6212, 8572, 11136). Matchbox is intended for low resource environments. What am I missing? |
| olwm | 3.2p1.4-21.1 | olwm | 392 | 1684 | 4504 | 0 | 0 | 0 | 9 | olwm runs olwmslave, which has slightly greater memory requirements than olwm itself - including 11 libraries. |
| OpenBox | 3.4.2 | openbox | 3312 | 7780 | 11676 | 0 | 0 | 0 | 31 | |
| PWM | 1.0.20010309 | pwm | 384 | 1276 | 3016 | 0 | 0 | 0 | 8 | |
| PWM2 (Ion2) | 2-20040729 | pwm2 | 780 | 2376 | 3808 | 0 | 0 | 0 | 13 | |
| quark | 101 20061208-1 | quark | 252 | 1220 | 2700 | 0 | 0 | 0 | 7 | |
| QVWM | 1.1.12 | qvwm | 544 | 2616 | 0 | 0 | 0 | 589222 | Runs xbiff, xeyes, and xload on start, each of which is approximately 270, 1700, 3800. | |
| ratpoison | 1.4.1 | ratpoison | 260 | 1500 | 3132 | 0 | 0 | 0 | 12 | |
| Rio | 1.0 | rio | 260 | 1264 | 2968 | 0 | 0 | 0 | 11 | |
| SithWM | 1.2b1 | sithwm | 248 | 940 | 2564 | 0 | 0 | 0 | 7 | |
| TinyWM | 1.3 | tinywm | 252 | 752 | 2552 | 0 | 0 | 0 | 7 | |
| TreeWM | 0.4.4 | treewm | 408 | 1880 | 4272 | 0 | 0 | 0 | 12 | |
| Twindy | 0.45-beta | twindy | 10136 | 3884 | 16136 | 0 | 0 | 0 | 15 | |
| twm | 1:1.0.4-1 | twm | 944 | 2296 | 5436 | 0 | 0 | 0 | 12 | |
| UDE | 0.2.9b-2.2 | uwm | 404 | 1716 | 3960 | 0 | 0 | 0 | 14 | |
| WeeWM | 0.0.2 | weewm | 252 | 1164 | 2672 | 0 | 0 | 0 | 7 | |
| WindowLab | 1.33 | windowlab | 404 | 2400 | 4316 | 0 | 0 | 0 | 15 | |
| WindowMaker | 0.92.0-6.1 | WindowMaker | 1108 | 4588 | 6940 | 0 | 0 | 0 | 23 | Runs two copies of the process: the one not shown consumes about 20% less memory. |
| wmii | 3.5.1 | wmiiwm | 4856 | 6180 | 8068 | 0 | 0 | 0 | 8 | |
| wmii | 3.6+debian-4 | wmii | 416 | 1748 | 4788 | 556 | 2036 | 32824 | 9 | |
| WMX | 6 | wmx | 404 | 1892 | 4108 | 0 | 0 | 0 | 12 | |
| XFCE | 4.4.0 | xfwm4 | 1332 | 7508 | 13720 | 0 | 0 | 0 | 40 | The stats here are for xfwm4, XFCE's window manager. XFCE also runs several other processes: xfce4-session (440, 4652, 11908), xfce4-panel (1848, 8636, 22248), Thunar (416, 4392, 12072), thunar-tpa (772, 5576, 20580), xfce4-menu-plugin (2496, 10868, 25012), and the largest, xfdesktop (34508, 9604, 56540 - and it has 51 libraries). |
| xmonad | 0.2 | xmonad | 1432 | 2656 | 5608 | 0 | 0 | 0 | 4 | Written in Haskell. Usually runs dzen2 as well. |
| xmonad | 0.3 | xmonad | 1288 | 2576 | 5632 | 0 | 0 | 0 | 12 | |
| xmonad | 0.4 | xmonad | 1424 | 3092 | 5892 | 0 | 0 | 0 | 12 | |
| xterm | 234-1 | xterm | 3008 | 5200 | 9268 | 0 | 0 | 0 | 22 | xterm can act as a WM (although not very well). But it's mostly here for comparison. |