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."
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.
In light of the fact that w/o tweaking, fiddling, or thinking my XP machine routinely outperforms a supposedly much faster Linux machine on the GUI side of things.
I have a 2x400 Celeron running XP and a 1.8Ghz Celeron running Linux.
Linux is obviously more rock solid and has a lot less problems with forced restarts due to updates and whatnot but I just don't think it responds as well as XP seems to.
I know, I know, the Slashbotters will tell you that MSFT plays games with how apps load because they are partially in memory or whatever... No offense but if I have to take a small memory hit to make my apps load faster than a machine with 1/3 the speed then so be it.
I've never had much luck with 2000 and less than 256 mb of ram, it does seem pretty tolerant of slow CPU speeds (I ran it on a P2 with 384 MB just fine). My boss is running it on a P3 with 256 and it's pretty unresponsive once outlook and ie are open (not to mention any other office programs). I would expect Linux feature rich desktops to have similar requirements to Windows, but thought the big advantage was if you don't need that you are not stuck installing/loading all sorts of features you do not need (use Ice or FVWM or something light).
Back in the day StarOffice 5.2 ran about 10 times faster on a Windows 95 install than on a Linux install, I still don't understand that one. Am I the only person who liked SO5.2 desktop replacement system? Not that I don't like OpenOffice (it's my main office suite).
Degaussing scares the bad magnetism out of the monitor and fills it with good karma.
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...
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
Actually, yes I did it for both, specifically to ensure that it was cached like you say. I just started one line too low when I cut and pasted.
"The invisible and the non-existent look very much alike." -- Delos B. McKown
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?
> 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