Is the Linux Desktop Getting Heavier and Slower?
Johan Schinberg writes "Bob Marr wrote an interesting editorial about what many of us have have noticed lately: the three most popular Linux distros are getting "fatter" in terms of their memory footprint and CPU demands for their graphical desktops. Fedora Core 2 isn't usable below 192 MBs of RAM while Mandrake and SuSE aren't very far off similar requirements either. There was a time when Linux users would brag that their favorite OS was far less demanding that Windows, but this doesn't seem to be the case anymore. Modern distros that use the latest versions of KDE and (especially) Gnome feel considerably heavier than before or even than Windows XP/2k3. Sure, Longhorn has higher requirements than XP (256 MB RAM, 800 MHz CPU) and the final version will undoubtly be much more demanding, but that's in 2-3 years from now. For the time being, I am settled with XFce on my Gentoo but I always welcome more carefully-written code."
In light of the Windowes System Requirements, is this really that big?
I can attest to this article.
My machine dual boots Win XP and Mandrake 9.1.
I'm using Gnome and sometimes KDE for Mandrake and when I'm in WinXP the system is a lot more fluid then in KDE or Gnome. I'm sure there are somethings I could to to tweak KDE or Gnome, but at least as far as Mandrake is concerned, out of the box, they drag ass!
I use FC2 on my desktop at work and I'm often irritated by the long startup times for many apps. Although the machine there isn't anything special (P4 2.8Ghz, 384MB Intel onboard video, 40GB HD) it's a bit much to wait around 15-20 seconds for OpenOffice to load (yes, I do increase the memory settings), or 8 seconds for Ethereal (gui). Once things are cached it's not too bad, but still nowhere close to say MS Word's sub-second load time on the same hardware. I was under the impression that FC2 prelinked newly installed apps too, which should help to avoid these long load times.
;-)
It doesn't seem confined to Linux either; I use w2k as my main desktop at home (also have an FC2 desktop and Gentoo on my server/router) and opensource apps seem to have the same long load times. I won't compare Firefox to Explorer for obvious reasons, but the delay is noticable. I use Agent (a closed source usenet client) and it loads in 2-3 seconds for me, in contrast to Thunderbird email client which easily takes 3 times as long. This is strange since Agent has much more data to load (subscribed to 15 newsgroups, some very busy and so have thousands of messages - including bodies on disk).
Once apps are loaded in Linux or Windows, they perform well; It's just a shame that the initial startup times are the first experience you have of an app, and if you're drumming your fingers, it's not creating a good first impression.
That said, I still prefer Linux
Code, Hardware, stuff like that.
See, this just comes across all wrong to me. I use neither, as both are too bloated for my tastes. But of the two, it's KDE and not GNOME that the slower and bloatier. I'm curious as to how anyone can see it the other way around. Certainly on all the hardware I've tried, KDE is measurably slower. As a completely unscientific test:
"The invisible and the non-existent look very much alike." -- Delos B. McKown
Fr'instance, I have a Thinkpad 600 with 64 MB of RAM. The thing is just sitting in a box right now because I've been unable to find a distribution that will run gracefully on this machine.
And when you think about it, 64 MB is a still a helluva lot of memory to be incapable of running a reasonably current OS. I'm sure (and I sure hope!) that somebody could recommend a Linux distribution that's suitable for a machine like mine. But it says something that I spent at least a couple of hours looking at various obscure distributions, and couldn't find one that did the trick.
I'm generally "Interesting," "Insightful," and even "Funny" here. What the hell happens to me at parties?
I have used KDE, Gnome, fluxbox, XFCE and IceWM at different stages of my Linux use, and in the end it seems that IceWM is my favourite, fast environment for getting work done. I mean, KDE and Gnome are both bloatware, fluxbox is a bit too minimal, XFCE is a bit to awkward, IceWM is just right. Also, don't forget to install iDesk if you want desktop icons on a minimalist system.
Meh.
I would recommend this Bob character and his friend try Xfce as Johan mentioned - it was not mentioned in the article. It's starting to become more popular and is well known for it's efficiency/speed, also included in the FC2 release.
# fuser -v
#
Classic "You're wrong there is no problem" response from the linux man. I'm a linux guy 100%, and I'll update your obviously silly 1997 comment: I use Linux because the whole process is "lighter". This is mainly because I know what's loading, but I can't stand how slow it's becoming.
How can you take obvious evidence of people hating the bloat and how slow Gnome/KDE are becoming and say, "No, you're wrong."
That's exactly the attitude that drives people back to Windows...
I love Window Maker -- it's great, and i prefer it to GNOME or KDE any day.
However, i've used three (or four, depending on how you count it) x86 distributions with Window Maker -- Red Hat 7-ish, MDK 9, MDK 9.1 (which was actually considerably faster than 9 for me), and SuSE 9 -- and none of them were ever as snappy as Windows (XP, 2000, or otherwise). I've never understood what Linux people are talking about when they say that Linux 'runs faster' than Windows. I've never experienced that in my life, and i consider myself to be pretty computer literate (enough to know if i've got some crazy circumstance going on that makes that the case, anyway).
I don't know, maybe X and the various environments that run on top of it were faster during the period where Windows 95 and earlier versions were in use. But since Windows 98 came out? Never. :/
If the first thing that most serious under-the-hood-type users do is ditch Konquerer for another browser like Firefox or Opera doesn't Konquerer meet your criteria for what constitutes bloat?
I'm not looking to flame or troll, only looking for some objectivity.
"Accept that some days you are the pigeon, and some days you are the statue." - David Brent, Wernham Hogg
When I was running RH9, I obtained a TK script to monitor my CPU temperature, adjust the fan speeds, and display the current temperature. The display is tiny. In RH9, it took 57MB! I think that it should take less than 1MB.
In order to save some memory on my system, I started rewritting the script into C, using GTK2 (a good excuse to learn this library). After implementing most of the functionality, I found that it took about 17MB. I wonder how much memory it would use if I ported it to motif (or athena widgets).
Things are getting better. I just ran the original script on my now FC-2 system, and found that it uses 8MB.
I realize that some of the memory in use is shared with other applications. I am starting to wonder if we have lost sight of memory usage.
Where law ends, tyranny begins -- William Pitt
They aren't that inefficient generally. Sounds like you ran into a bug of some sort. I play Neverwinter Nights in one X session (in Windows and Linux both, I suppose, you can use a game as your 'window manager') while multitasking with KDE in another X session (try doing that in windows!). It runs fine and doesn't have really any slow down if I ran NWN just by itself.
My flavor is Blackbox and/or Fluxbox, but you're spot-on about "my computer is a tool" thinking versus "my computer is a toy" thinking.
I wonder if it would be possible to do a lot of the "toy" stuff so many people like (or use by default) without the high memory/cpu requirements? If it's just a matter of having the stuff to explore and play with, you'd think something like xfce or enlightenment would take off. But the toy concept seems to go hand-in-hand with eye candy, so we need to load the alpha blending code, the anti-aliasing font libraries, the scalable vector graphics rendering engine, the bitmap skins, all that junk into core, then we need the cpu to juggle the fading in and out of tooltips, animated menus, and big chunky kparts modules, parsing xml for every little thing, all on top of the work the user's actually trying to do.
Yes and no. It's really an artifact of the software actually doing more. Desktops of the past used static, low-color bitmaps, aliased fonts, didn't thumbnail images in the file manager, weren't network-aware, etc. etc. Now we have transparent PNGs everywhere, slick-looking fonts and animated GUIs, and pictures and even movies previewed in the file manager. In order to do more, the desktops need to use more resources. This means caching alot in memory, which also takes time to load it there.
It's easier to write a fat program that does XYZ than it is to write a sleek program that doex XYZ. But the past was a sleek program that just did X, so the comparison isn't exactly fair. This is why I disagree with Gnome's current trend of simplicity ahead of configurability. I don't think these two goals are mutually exclusive, and I believe it's important to make applications that scale downward as well as upward. A truly beautiful DE would scale up to where Gnome is now, which runs quite smoothly with all the features on a decent computer, but also scale down so that it ran as fast as Fluxbox or WindowMaker when you started disabling stuff. It's possible to disable features in Gnome, but doing so doesn't yield as great of a performance gain as it should.
That said, Linux thrives on choice, so installing a thin DE shouldn't be hard. If it's hard on RedHat, then perhaps you should investigate a better distro... =P
-3Suns
~~~~
The Revolution will be Slashdotted
I've always been a big fan of Windowmaker, but I just wish a distribution (hint--Debian, Gentoo) would pay as much attention to it's visual experience as it does Gnome or KDE. This means having default icons with applications. Debian is probably the best suited for this with its menu architecture, it associates icons with applications for Gnome with no problem at all -- how hard could it be to include a default icon set for WindowMaker? Maybe I should be directing these comments to the package maintainer.
d. Taylor Singletary,
reality technician techra.el
I have a 1.2Ghz, 256Mb laptop running NetBSD and GNOME 2.6 which is blazingly fast. Looking at top, it's using around 150Mb to run a GNOME login, Firebird, Rxvt and the NEdit editor.
In comparison, my 1.6Ghz, 512Mb desktop machine running Linux and GNOME 2.6 is noticably slower. The memory footprint with a similar list of apps running (Mozilla instead of Firebird) is around 400Mb.
Linux used to be great on lower spec hardware than Windows, but since 2.4 it has become bloated and slow. Glibc is also an incredibly bloated implementation of a C library if compared to those that ship with BSD's. The kernel bloat could be a result of the extra complexity ti run on mid-range, multi processor machines. Glibc's excuse is somewhat less easy to pin down.
Chris
why not turn this discussion in some kde/gnome speedup tips ?
here are a few:
- on KDE, a different style really matters. 'matters' not as in 'use -fomit-frame-stuff', but as in 'it really matters'. stop using keramik/plastik and use light V3, or QT windows. you will notice it very quickly, both in speed and in memory usage (very significant)
- watch out with konq's process caching. keep an eye on the memory usage of cached processes, and if you see they are too leaky, disable konq proces caching. konq starts up quickly without caching anyway
- tired of people saying 'its the nvidia drivers' for every performance problem ? i have to confirm this. I'm not talking about FPS in games or so, just basic GUI performance. for example, try the RenderAccel setting (also try disabling it, there are some problems that seem to occur only in some situations)
offcourse, all of this is not an excuse, but at least it can offer some relief. i am no fedora user, but i wonder if some simple research on fedora could point out where the (perceived and real) slowness is coming from... i remember seeing success stories like "colorful KDE3 performance on low-end hardware", and i run KDE3 at home on a 233mhz 128mb ram at home (debian). But i also saw a (very) slow mandrake installation.. it must be possible to find out the cause.
what tools could be used to investigate ? like xrestop, strace, profilers (but i have no idea how to profile a whole desktop and not a single application)
ow, and some problems i'd like to know more about:
- openoffice painting slowness. i can type quicker than openoffice can paint in some situations, in other situations its very quick. it doesn't even seem related to document size
- gtk double buffering slowness... it started since gtk2, i don't know if it improved much (i don't notice it anymore on my new-faster pc, but i can see it in other setups)
- some KDE apps (like kopete and kontact) have slow dropdown menu's, others have quick ones. very strange, i tought dropdown menus are just basic QT stuff
What integration benefits do you mean? This is an honest question. Every year or so I try out the latest Gnome and/or KDE, and discover they don't do anything for me other than eye candy (which I like, but doesn't seem that important, and could probably be obtained in other simple windowmanagers if I cared enough).
Right now I'm using pekwm, which has no eye candy (can't even seem to get many of the themes to work), but is stable and fast, and gives me tabbed windows which I do see as a major benefit for the type of work I do (and yes, I am a software developer). It also gives me flexible and powerful key bindings, which I find more efficient than a toolbar/panel what have you.
I just am waiting to see what Gnome or KDE (or even XFCE) have to offer as far as integration. What actually works better? What actually saves you time?
Do people honestly use file selector windows and drag and drop, and find that more efficient than tab completing in a terminal window? Do I just need more practice?
Christ, why are you running KDE on a K6? XP would bring that box to it's knees too.
No it wouldn't. My father ran a test XP system back out when it was still Whistler on a 400MHz or so Pentium II system with 256MB of RAM. It ran absolutely fine.
XP, for the most part, will work fine on older systems provided you have at least 192MB of RAM. Any less than that and you'll be forced to swap to run any pretty much any application. As long as you have plenty of RAM, you should have no problem running Windows XP, even on older hardware.
If you could get a useable experience running Windows 98 or Windows 2000 on your system, you should (with enough RAM) be able to get a usable experience with Windows XP.
You are in a maze of twisty little relative jumps, all alike.
> Do people honestly use file selector windows and drag and drop, and find that more efficient than tab completing in a terminal window? Do I just need more practice?
That depends. When you are going to copy/move a bunch of files that have a name startign with the same chars, a commandline copy/move will be quicker..
If you have a directory with 500 files in there, and you need to copy 30 of them with wildly different names, but created on the same day, it is often easier done and faster with a gui.
I use both a lot, and happen to use KDE 3.2 as window manager/desktop environment at the moment. What KDE offers for integration that I really notice? Well, not much.. but I bet that is because of me using it mostly as an advanced program lauyncher with lots of eye candy.
On the other hand.. at times I am very happy with the integration of file/directory/cvs/pdf/ps/whatever browsing and the support for spell-checking of form input and such.
The main reason for having KDE as default desktop is that I am not the only user of this workstation, and when others use it, they are usually rather happy to find an environment that looks and feels familiar even when they are mostly windows users.
And yeah, I could still give my own account a different window manager but heh. I also 'support' those peopel, so it really helps to use what they are using also.
At times I need speed and memory and I need X.. guess what, I usually just start twm (not even vtwm or such) if I need a window manager at all.. Usually this is for playing games so who cares about a window manager in such a case anyway.
Easy solution (and a good idea for reasons of security as well), have a special game account that gets a very minimalistic desktop and as much machine resources available as possible..
For all practical purposes, my machien has the power to run KDE and OOo and a bunch of browser windows and terminals. Thats what I need for my work usually, and in that KDE is not getting in the way at all.
Oh, and I like konsole and konqueror.
I've read most of the comments here at my default +5, and I have to say, I don't see how so many trolls and blatant lies got modded so high.
I know what you're thinking. You're thinking "oh, he's just another Linux elitist who's going to condenscedingly tell me what to do." And you would be wrong.
I'm not going to tell you what to do. I'm going to tell you what *I* do, and see if I can make any sense of the garbage that's getting posted here.
I use Debian GNU/Linux (isn't it obvious from the sig?). Stable. Not unstable, not even testing. With a 2.4 kernel on P4's with a minimum of 512MB of RAM. And they all fly.
I program. I write software for Navy weapon sims. I write software for my company on the side. I play NeverWinter Nights on my machine with an ATI Radeon 9700 Pro, while scanning photos, reading email and administrating the servers for my company and personal use. All of this flies, and [Microsoft] Windows doesn't even compare. And yes, I use Windows (ever heard of NMCI?). MacOSX? Don't make me laugh; I've used it, I've programmed in it, I used to administer a whole lab of it. It's slow and buggy. GNU/Linux runs fast and smoothly on the exact same hardware. GNU/Linux doesn't crash (unless I'm doing some obscure kernel hacking), and it doesn't "stutter" when I'm playing MP3's while image editing a 500MB file in GIMP.
GNU/Linux allows me to do more and more things at the same time. GNU/Linux makes things possible that I never would have imagined possible on Microsoft Windows or Apple Mac OS X.
But you know what? None of this matters. The only thing that matters to me is that GNU/Linux is Free as in Freedom.
I don't know why you guys are having so many problems with GNU/Linux. All I can say is that I've had worse with Windows an MacOSX, and even if I hadn't, I would _still_ use GNU/Linux, because it's Free. Fortunately, in my not so humble experience, GNU/Linux is better in every sense of the word.
Nathan's blog
Been using XFCE for ages now, on a 5-year old 500MHz celeron, and it feels faster than my 2.6GHz win2k desktop. Plus I love the flexible Os-level hotkey setup (CTRL+ALT+X gives me a terminal, CTRL+ALT+M gives mozilla,...)
The extra 'goodies' plugin packages are great too.
http://xfce.org
...I want file associations to just work. I'm not a heavy multimedia user. I'm running Pentium Classic with 90 MB, 180 MHz, 24-32 bit display, & Sound Blaster 16, because it's stable & it all just works. Basically, I need to be able to create documents & view them according to modern standards [HTML 4.01 & CSS]. You can't do that with Windows because the browser won't be updated anytime soon.
As for Enlightenment & other window managers, I don't use them because I don't know how to configure various software packages just to watch various multimedia files. I can't underscore this enough. I kind of gave up watching video clips on this box, but it turns out that KDE or Opera offered me the choice of watching a certain clip. It asked me if I wanted to use a certain package to watch it. I was surprised because I wasn't even aware that it could be so easy. You're probably wondering why I would check in 1st place if I don't expect it to work. I checked in hopes that something accidentally got set properly & it'll just work; well, it is going to work, because I'm upgrading KDE with the relevant packages right now.
If you already know which software is used for which media files, then I encourage you to use a lighter environment, but as for me, I really need to get a system that is preconfigured. I've tried Blackbox, twm, swm, lwm, fvwm, & probably others. Because of the apparent lack of documentation, I just can't seem to work Blackbox & twm. I honestly don't know how people can recommend Blackbox & twm in good conscience. As for Enlightenment, I don't understand why people use that when there is KDE & Gnome. When I tried this, last millenium, it seemed to be part of KDE & Gnome. Now that KDE doesn't seem need it anymore, I don't bother with it.
I don't use Gnome because the documentation is difficult to read. It seems geared to describing tasks that I have no interest in, while KDE's documentation is towards telling me what such 'n such app is for & what I get to do. "You have to do..." vs. "You get to do...". I would argue that KDE's documentation is a delight to read in & of itself, whether or not you want to accomplish the relevant tasks. A list of chores vs. fun & productive stuff.
testing out my trending skills
Are you sure you are not going into swap? I suspect that areas where Linux is much better than Windows are hiding the problem somewhat.
Here we run at least 1G on all machines, so whether you are running Linux or Windows the only thing that gets us into swap is our own huge appliations, which are compiled from the exact same code. It is pretty obvious that when memory runs out on Windows the machine and our app is dead, and it will switch from taking 1 hour to complete to 9 or 10 hours. On Linux when running the same thing the difference between going into swap or not is to go from 1 hour to maybe 1.5 hours. (note this is Win2K and RedHat 7.2, things may be different in newer systems).
What this means is that hitting swap is not so obvious on Linux, thus it may be hiding the fact that it is doing so.
In my experience memory usage of Linux running a desktop is now greater than Windows. Gone are the days when it was as much as 10 times smaller (remember runing FVWM?). The only reason we can keep our memory usage by our graphics programs the same size is that Linux is much better behaved when free memory gets tight.