Slashdot Log In
Is the Linux Desktop Getting Heavier and Slower?
Posted by
michael
on Thu Jun 10, 2004 09:05 AM
from the atkins-diet dept.
from the atkins-diet dept.
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."
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
Slackware (Score:5, Informative)
Windows XP v. KDE or Gnome (Score:5, Interesting)
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!
Re:Windows XP v. KDE or Gnome (Score:5, Insightful)
> when I'm in WinXP the system is a lot more fluid
> then in KDE or Gnome.
I did the KDE/Gnome thing for a while, until one day when I was dorking around with some opengl stuff and playing with some test apps.. I think at the point I noticed the problems with KDE or Gnome the most was when I was testing a physics library that's out there.
Under Gnome or KDE (default config, though under Gnome I did kill off as many services as I could) I would quite literally get 3-5 fps on a test app that was dropping blocks out of the air and bouncing them around. It was unusable. On a lark, I swapped to twm for a few minutes to see if the issue was my machine or the window manager.. instant 50 fps boost running the same program. I've now sworn away using KDE or Gnome, and settled on one of the "lightweight" managers out there.
I'm sorry, but if the desktop software is that inefficient then there's no way linux is ever going to improve its status.
Parent
no, they aren't (Score:5, Interesting)
Parent
Re:Windows XP v. KDE or Gnome (Score:5, Insightful)
Isn't that the point of a windows-based system?
>XFree86 seems slow because it renders the whole process poorly
So how isn't it slow? How does a display system just "appears" slow to the user, but it actually isn't?
>if you actually measure these things, XFree86 is faster.
And what measurement is that?
If it appears slow, why isn't it slow?
Parent
Re:Windows XP v. KDE or Gnome (Score:5, Insightful)
Parent
Fluxbox (Score:5, Insightful)
Mainly the startup times... (Score:5, Interesting)
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
Re:Mainly the startup times... (Score:5, Insightful)
And why do you think that MS Word pops up instantly? Think about it - it's a large program split over multiple files, all of which have to be accessed before the program can be run.
Now consider how long it takes to open a New window in OpenOffice.org once it is loaded.
Finished thinking? Good.
At this point, you are hopefully at the right conclusion - MS Word is already mostly loaded when you clicked on it to run. Almost all MS apps preload large sections of the core functionality in a standard install to improve responsiveness once the system is up and running. Alas this approach is also taken by a load of other apps on Windows with the net result that even though the desktop in Windows XP pops up faster on boot than previous iterations of the Windows OS, it can often be a couple of minutes before the hard drive stops popping and thrashing and the system becomes quiescent (and usable).
Real start up times for apps are difficult to gauge even when they aren't preloaded. OpenOffice.org is a slow starter although it is leaps-and-bounds better in version 1.1 than it used to be when it was first released and I hope that the improvements in start time continue . That said, on days when I'm writing a lot of documentation, it gets loaded in the morning once and gets used all day without complaint. If I accidently shut it down, most of the files used are still in the linux file cache and restarting it is a matter of a couple of seconds of turn over.
Cheers,
Toby Haynes
Parent
Re:Mainly the startup times... (Score:5, Interesting)
But if that's true, then why does word still load faster if I'm using the Crossover Office plug-in under linux? That removes all of the pre-loaded
Parent
Re:Mainly the startup times... (Score:5, Informative)
Oh really?
Here's an experiment for you.
Download Process Explorer from www.sysinternals.com.
Load Open Office.
See all of those highlighted DLLs in the process tree? They're DLLs that the Windows application loader had to relocate because some idiot who doesn't know how to develop software for Windows decided that "hey, it can't be that hard", and didn't bother to learn how the operating system works.
This can increase your load time by a factor of 20. (Not to mention that they have many more DLLs than they should conceivably need - they went overboard on refactoring everything).
Now, the rest of the experiment. Do the same thing with MS Word.
Oh look! NONE of the DLLs are highlighted at all. NONE of them required relocation. NONE of them required the application loader to spend a lot of time repatching the image to a new address in memory. What's more is that you can now use BIND to improve load speeds even more - by a factor of 5 for each DLL.
Mozilla recently started making changes to do the same things in their builds. Guess what? Now, with Mozilla, you don't need to use QuickLaunch any more. And it's not because Mozilla is "pre-loaded" - it's because they finally woke up and decided that hey, Windows might just not work like Linux, and they should perhaps fix their app to work well on the platform they're targetting.
Conclusion:
Those who don't grok Windows are doomed to poor performance.
Those who are arrogant enough to believe that most Windows developers are jumped up VB programmers will write code that runs like shit on the Windows platform.
Parent
True, but it is a fact of computer programming (Score:5, Insightful)
Sadly it used to be that you could run Linux on just about anything. I install all my servers with out any kind of X environment because it pigs up too much space. It is a pain too because RedHat automaticaly installs all sorts of crap that is unneeded, so I have to remove it after a generic install.
Re:True, but it is a fact of computer programming (Score:5, Interesting)
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
Parent
Performance Work (Score:5, Informative)
One thing you have to realize is that most users _want_ their desktop to do more. There's a reason only a small fraction of users still use TWM; it doesn't do what they want it to. And, if you want more features, you have to realize that it will require more resources.
That said, there is a lot of code out there that was written first to Just Work(tm) with little thought of performance. Good practice indicates that, while you should keep performance in mind, real optimization and fine tuning should be done last.
Current work for performance improvements in GNOME including sharing data between processes (say, icon themes), reducing system calls and X requests during startup, and general speed improvements in the various library calls used to make the applications actually work.
More help is _always_ appreciated. There are several Plans of Attack available from GNOME developers who know what needs to be done but don't have the time. If you want to help implement those the other developers and users will be quite thankful.
KDE (Score:5, Insightful)
Is Linux less demanding than Windows? yes it is. If you want to, you can run the latest whiz-bang desktop from Gnome or KDE, and the performance will be roughy similar to Windows. Or you could use some lightweight UI, like Xfce. If you decide to run som graphics-heavy UI with lots of eye-candy, it's your choice, and you should expect it to be somewhat slower than some lightweight UI would be. But you have the choice.
I for one think that the progress of features and eye-candy should not be held back by that guy who still runs Linux on his 200MHz Pentium. If he wants to, he can keep on using the UI he currently uses, or switch to some lightweight UI. Or, heaven forbid: upgrade his machine! If you have the hardware, you should have the ability to put that processing-power to use by using some kick-ass UI with lots of eye-candy.
Sad but accurate (Score:5, Insightful)
He's right. It *is* a shame that Linux needs more memory and CPU power than XP, yet still feels slower. It's also more annoying, btw.. in the time I've been writing this response, Rhythmbox with the mp3 gstreamer plugin, playing an mp3 from a samba share, has dropped audio three times for a second or more. My coworkers laugh at me when they send me
Linux as a desktop os is bloated, slow and unreliable. As as Linux on the desktop advocate, I often feel like a vegetarian... sure, it's virtuous, but I'm stuck eating pasta and potatoes instead of lamb chops and meatball sandwiches.
I'm just not sure of the solution. The author of the article is a little bit glib when he says "We need to put a serious emphasis on elegant design, careful coding and making the most of RAM, not throwing in hurried features just because we can." Easy to say. Hard to do. I know the Gnome developers and the rest of the thousands of people working hard for little or no money on the OS collectively known as GNU/Linux are doing their best to pay attention to elegant design and careful coding. The problem is that as many voices as there are screaming for elegant design... there are as many voices screaming for mono, java, and other "next gen" development tools.
Don't worry (Score:5, Funny)
Missing the point (Score:5, Insightful)
There is a huge segment of the market with 64-128M PCs who don't want to be forced to upgrade their hardware just so as to run XP. If Linux could run responsively on that much memory, it could own that market. But instead, modern distros are too slow.
For this segment, Fluxbox, dillo etc. are not an option - they need the user friendliness of a proper desktop environment (help browsers, tooltips, proper word processors etc). KDE and Gnome could provide that - but they need to control the bloat.
To be fair, I hear KDE has improved a lot in this respect, and my mobile PII with 192M is reasonably nippy running Gnome and openoffice. So improvements will come.
But talking about the command line and fluxbox and all that is just irrelevant.
Library bloat (Score:5, Interesting)
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.
KDE / GNOME roots (Score:5, Insightful)
When I saw GNOME under development, I never thought to myself, "self, now that GNOME thing looks to speed things up". Never once did it even occur to me that all that PrettyFactor would be light on memory or CPU. Is the Linux Desktop getting heavier and slower? If you use GNOME or KDE or any other "user friendly" desktop environment, yes.
I've got a 486/66 at home running a mail / web / name / shell server. He's keeping up pretty well, but I must admit that console dselect takes a minute longer than I would prefer to start up. For his every day tasks, even keeping up with updates, it's more than enough-- so really, this is a question of the GUI end of things.
I wonder how well it would work to introduce one of those reviewers to a very well set up and themed tvtwm2 or whatnot. You know, without all the Kapps or Gapps. I bet the reviewer says it's snappy as a rubber band, but it doesn't do anything (most of those setups don't have any easy to find buttons, you have to click on a blank background to start anything). I think under that environment, Moz, OO, Wine, etc. work, but the plethora of free apps that make Linux interesting to the hobbyist seem to take advantage of the easy to use Glibs and Klibs. The reason for the "bloat" (i.e. heavier and slower) is the added functionality and eye candy.
You can take your lean and mean Linux Desktop, but don't expect it to run all the pretty apps nor expect it to have anti-aliasing and PrettyFactor3.0.
Problem isn't GNOME or KDE, it's Linux and glibc (Score:5, Interesting)
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
Re:Well duh (Score:5, Insightful)
Parent
Re:Well duh (Score:5, Insightful)
Parent
Re:Well duh (Score:5, Insightful)
The fact is that on my home machine, in Windows 2000, I have more free RAM and faster boot up times _with_ IE loaded (if nothing else as a desktop/file manager), than in KDE _without_ Konqueror loaded.
There are no two ways about it. KDE isn't "feature rich", it's a piece of badly-programmed bloatware. Even if you turned off all the "features", it's still more bloated, slower and less user-friendly than Windows with all of that turned on. (In fact, even than windows with 6 pieces of spyware of your choice.)
Note that so far I'm only talking about KDE, not about Linux in general. Yes, I know, you can run another dektop environment. I'm writing this in XFce myself, so, yeah, I know already.
The problem comes when you need to load any app that's based on KDE. Then all the bloated beast is loaded into RAM. Not only then there goes your machine's RAM, you also get to wait several extra seconds for all that KDE bloat to load. Not "features", but hundreds of megabytes of pure library bloat, which you can't turn off. Whoppee.
Now say a friend tells you to also run some Gnome program. Whether it's Gnomeeting, Evolution or whatever, it doesn't matter. You're now _also_ loading the Gnome libraries in memory, alongside the KDE ones which already were making your machine swap. Whoppe. The RAM and CPU manufacturers must be doing cartwheels for joy by now.
Now also add Mozilla and a few others who can't just be a browser or whatever, they also have to have _yet_ _another_ set of their very own GUI widgets and bloated libraries.
Then edit something in OOo. OOops, yet another case of its own libraries. It can't even freaking use the perfectly good font rendering of X, it just has to come with its own font directory and libraries. And manage to look _worse_ than X's font rendering. (To its defense, though, it's just as retarded under Windows too.)
Well, not to sound only negative, here's my constructive suggestion for the day: if you're going to advocate Linux, might as well get a profit out of it. Buy shares in some memory manufacturer
Parent
Re:Well duh (Score:5, Insightful)
I don't use Linux desktop because it's lighter (at least not KDE & Gnome)... but I do still love the fact that I can have a fully up to date and function operating system on my old first generation pentiums with 64-120 Megs of RAM which act as firewalls/webservers/databases/fileservers and the like.
I hate that there's no current version of windows which can make those boxes usable to do anything.
Parent
Re:Well duh (Score:5, Interesting)
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...
Parent
Re:Compared to Windows (Score:5, Interesting)
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.
Parent
Not my experience (Score:5, Funny)
A student approaches his master and asks him: Master, how come my 3GHz Hyperthreaded four processor system with 2Gb of RAM feels so slow, yet I never hear you complain about your old 386? Doesn't it run slower?
And the Master responds: A hare will think the grass is dead, while a turtle might see it grow. A penguin on the other hand, doesn't even know what grass is.
The student was immediately enlightened, went home and programmed a web server on his Commodore 64.
Parent
Stupid Apologists (Score:5, Insightful)
In light of the Windowes System Requirements, is this really that big?
Why does it matter what the requirements on the box say? KDE/GNOME are as slow or slower than windows when run on the same hardware! So the fact that windows has hich system requirements doesn't excuse the fact that Linux has higher ones.
But it isn't as heavy if you don't run those Desktops and applications.
That is not a fair comparison. It is easy to be lighter weight when you don't do as much.
If you need to do everthing that you can do in windows, then Linux is signifcantly slower (mostly footprint and loading time) than windows.
But Windows preloads thier applications.
That is a good argument for Mozilla vs. IE on windows, but in most cases is not valid. Like the submitter stated, even third party applications tend load quicker on windows that most linux applications do in windows. I have used Linux for years and I can't tell you how many times I have gotten tired of the slow responsiveness of KDE and GNOME and have reverted back to my old TWM (or even more lightweight) ways. Where-as on the same machine Windows 98 or 2000 were quite responsive (just not very usefull for what I was doing).
Secondly there is no reason that Linux could not preload common applications to make them run faster, and if that makes the system more responsive they should do so. But I really don't think that would completely solve the problem, it would just make the boot time longer, and boot for a Linux desktop is already longer than for Windows XP or OS X.
So basically it comes down to the fact that it is (relatively) easy to write full-featured software and it is easy to write light-wieght software but doing both is hard. Microsoft is doing a better job than the open source desktops in that regard.
Parent
Re:Compared to Windows (Score:5, Informative)
I beg to differ.
It doesn't have as good window manager themes as GNOME, perhaps, but it has Keramik, which is widely advocated as "The best" KDE theme. It uses GTK, so all of the GTK themes for GNOME are availabe to XFCE.
The idea of XFCE is that it is relatively lightweight yet still fast - and I believe they have realised this goal. It is not as lightweight as, perhaps WindowMaker or BlackBox, but after trying those I thought "UGLY!" and left.
It's true - I like my computer to look good, although this doesn't serve much of a purpose, it's nice to see smooth curves and gentle highlights.
Parent
Re:you are missing the point! (Score:5, Insightful)
On the other hand, desktop software still often uses less resources than Windows, and if it doesn't we have lesser pretty alternatives - old GNOMEs, fluxbox, etc etc.
Me, I prefer the midpoint of XFCE, as it is minimally bloated, but still quite pretty.
Parent
Easy to Find Out (Score:5, Insightful)
Parent
Actually, it's obvious why they're getting bigger. (Score:5, Insightful)
As long as the powers that be insist upon making popular desktops do everything without the need of a shell window, then they are going to be bloated. I don't care how pretty KDE is, it actually irritates me when after a default install of it I have to go hunting through the menus to find the well-hidden shell.
This is what you guys get when you keep preaching that linux is just as friendly as windows so everyone should switch. You get the same kind of bloat windows has.
Parent
Re:Actually, it's obvious why they're getting bigg (Score:5, Insightful)
I'm trying to adapt to Linux, but it's painfully slow. I've got a 300MHz K6-2 with 192MB RAM, but I'm going to have to try a slim window manager because KDE bogs everything down. My complaint is that it seems there aren't many window managers that are in a middle ground. I've looked at several of the smaller window managers, and they seem way too spartan. They're barely better than a straight Xserver. Can't you get wallpaper, desktop icons, a Start menu, and taskbar without the thing sucking resources like a sponge? That right click program menu is a waste of time because you have to minimize the apps you're running to right click for that menu.
Parent
Re:Actually, it's obvious why they're getting bigg (Score:5, Informative)
Christ, why are you running KDE on a K6? XP would bring that box to it's knees too. You need to use a lightweight window manager like IceWM or XFCE. KDE (or GNOME) has never had a goal of being "lightweight" so far as a know. IceWM offers a Win98-sh WM and pretty good about staying off the CPU, ditto for XFCE. You should be able to get a decent system running if you stay away from not only KDE and GNOME desktops, but their apps as well since they tend to launch a hefty support layer with them. Stick with QT, GTK, and Motif apps and it should work fine. FWIW, I had the exact same CPU in a box I gave away 2 years ago. It was a fine starter system when I bought it in 1996 and the fact that it run pretty much unaltered for 6 years is pretty impressive for what was a low end system when I bought it.
Parent
Re:Actually, it's obvious why they're getting bigg (Score:5, Informative)
Parent
Re:That's why (Score:5, Interesting)
Parent
Re:That's why (Score:5, Insightful)
All in all you make a really crappy salesmen for Linux.
Parent
Re:That's why (Score:5, Insightful)
Parent
Re:That's why (Score:5, Funny)
"Four terminal windows at the same time."
Parent
Couldn't agree more. (Score:5, Interesting)
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.
Parent
Re:That's why (Score:5, Insightful)
Parent
Re:That's why (Score:5, Insightful)
Attitudes like this? The parent merely speculated about why one might make one choice (a full desktop) over another (a leaner window manager). I use Gnome and am not the least bit offended; I like the eye candy. You don't see attitudes like this in the Windows community only because there are no such choices. We simply do as Microsoft says.
Parent
Re:That's why (Score:5, Interesting)
Parent
Re:That's why (Score:5, Insightful)
I love Window Maker -- it's great, and i prefer it to GNOME or KDE any day...
However, for someone switching over to Linux from Windows, GNOME or KDE would be a better choice. It's much closer to what they are used to than Window Maker. They will be having to learn enough new things. KDE and Gnome still have their place. Personally, I like KDE, but that's just me.
Parent
Re:Linux on Older PC's (Score:5, Informative)
Personally, if I needed to do such a thing, I'd run with either Gentoo or Debian (depending on how much memory you could get for it).
With Debian, you should go for the base install, then use apt-get to retrieve what you want. Keep it minimal: play with X and blackbox, fluxbox, XFCE, etc. You probably won't be able to get away with gnome/kde.
With gentoo, first set up a large swapfile, second do the install, third 'emerge ccache', fourth emerge x, and leave for a bit. I was able to get gentoo on a very similar laptop a year ago or so. Ran pretty well.
But the best suggestion I have is to google for some memory. I found 128 meg sodimms for $40... That would get you up to 192mb, which will help you a lot. The box tops out at 288mb (2x128mb, and onboard 32mb).
Parent
Re:It's the infernal "Desktop Enviornments" (Score:5, Informative)
kdeinit starts KDE applications by forking and then loading them as shared libraries. Because kdeinit itself links to the kdelibs, it allows a much more effective sharing of kdelibs (and its dependencies) between the applications and avoids unneccessary initialization.
In other words, it reduces startup time and memory usage.
Parent
Re:I used to run XWindows on 8 megs of RAM (Score:5, Funny)
Oh. You could? Oh crap. What do you mean you could do all this on your 5Mb Commodore Amiga too? Well there goes my argument then. Well, I'll get my coat.
Sorry for wasting your time.
Parent
Re:That's because you didn't properly tune it (Score:5, Insightful)
True, but then again they didn't do it for Windows either. Regular users don't care to dig that deeply into their system, they expect it will simply work. If it doesn't work at least as well as Windows out-of-the-box, well then there is another Windows user.
Parent
Re:GNOME heavy? (Score:5, Interesting)
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.
Parent