Measuring The Benefits Of The Gentoo Approach
An anonymous reader writes "We're constantly hearing how the source based nature of the Gentoo distro makes better use of your hardware, but no-one seems to have really tested it. What kind of gains are involved over distros which use binary packaging? The article is here."
The source-based thing isn't even why most people use gentoo. According to a recent poll on the gentoo-user mailing list, most people like it because of Portage (the package management system), with Customisation / Control coming in second (performance was third). Portage rocks. Even with the compiling, it takes less time to install some stuff (eg nmap) than it would take to locate the relevant .rpm. Of course, kde's a different matter, but with distcc compiling doesn't take too long.
Having said that, it looks like the guys doing the testing got their CFLAGS wrong. Gentoo's performance should never be worse than Mandrake -- I reckon they forgot omit-frame-pointer. Also, the kernel compile is unfair, because gentoo-sources includes a whole load of patches that Mandrake and Debian don't.
Finally, what's with measuring compile times? How is that a fair way of measuring performance? Hey, look, my distcc + ccache + lots of CPUs system with gcc3.2 can compile stuff faster than your single CPU gcc2 system... It's like comparing chalk and oranges.
LFS from scratch is my distro of choice :-)
Maybe to the uninitiated this seems informative, but to me it doesn't.
Stating on Slashdot that I like cheese since 1997.
Can this be correct. Debian turns out to he fastest?
Anyway, I like the idea of gentoo, and I saw I a lot of Debian users head over to gentoo because the idea of controlling everything including the build was nice, however, I saw the gentoo idea also pretty much die, since a log of these users are power desktop users and not everyone could wait 3 days for X to build.
What I like about debians packages is that if you do make a mistake you can always pretty much correct the package by fixing your souce list or goingt o packages.debian.org and getting the older working package and installing it manuaall with a simple dpkg -i old_package.deb.
In gentoo, you had to rbuild to the whole thing, whihc with x coud take forever. And so what I saw gentoo suddenly doing was having a lot of pre-complied binaries start being provided by gentoo because they saw the problem with building taking forever, and so it kind of killed the whole idea of building for yerself, in which case, if you are going to stick with built pacakged why not have them maintained by some of the best developers around (ie debian)
The othjer thing I noticed is that a lot of developers of software acutally use debian. I've noticed many a time that some cool software wa being made and the developers wouls provide source and they would provide a debian package and nothting else. Ie Debian appears to be the preferred developer's distro. In this I would like to hear discussion,.
Thansk all
Sigs are dangerous coy things
I don't use Gentoo (When I use Linux, I use Slackware), but I do use FreeBSD and its ports collection.
Purported performance gains are one thing source packages give you (although I don't enable super optimizations because you never know when gcc bugs with -march=pentium4 -O3 or whatever will bite you).
There are two major reasons I like installing from source, though. One is that you can customize the build to your system; lots of software packages have various compile time options, and when I have the source I can choose exactly how it's going to be built.
Another thing is that when you install from source, you can hack the program to your heart's content. On my desktop box there are around 15 programs that I have to modify to get to act like I want (from simple things like getting cdparanoia to bomb immediately when it detects a scratch to halfway complex things like rewriting parts of klipper and XScreenSaver, which now picks a random screen saver on MMB and lets me scroll through all screensavers with the wheel =).
I don't modify stuff on my servers, but I still get to choose exactly how things are built, which I very much enjoy.
While the posts are starting, and people are saying Mandrake would never be faster. Lets go back earlier this year...
Remember the KDE optimizations that where not included in the Gentoo source release? Everyone was wondering why KDE was faster on Mandrake. There where talk for over 2 months before people realized it was an option Mandrake was compiling with.
Myself, Gentoo's biggest feature was the kernal compile options, adding patches for pre-emptive mulitasking, and improved responsiveness. I noticed the improvements on all my machines, but the compile times where a draw back. And sometimes the applications wouldnt compile.
Mandrake while my favorite choice, doesnt include the best pre-emptive kernels. Which do make a noticable difference. So after installing mandrake, and putting a newer kernel on the system normally takes care of that.
I'm just waiting till beta2 of mandrake cooker 9.2 with the 2.6 kernels, that should make Gentoo and Mandrake on par for speed.
Most of the comparisons in the article were for X-related graphics applications, and while they were comparing the versions of the applications, they were not comparing the libraries underneath them (glibc, X11, and probably the window manager too come into play) and they should've compared versions there too. It becomes complicated because for a typical X11-based app there are probably several dozen libraries involved (in addition to all the configure-time options for them...)
I picked Gentoo because it was Free and free, and because emerge has IME one big advantage over APT - one well updated, consistant, all encompasing, repositry.
:D
OTOH my laptop runs RedHat, because I needed at least one machine running it to stay current with where they dump configs (it's the distro they use at work). Coupled with Apt-RPM it's competent enough, and I have no major problems with the performance.
So yeah, I have to agree with the article - you may like it one way, others may want to do theit own thing. No matter what you chose, you (probably) have binary compatibility, so who gives a sh!t about the holy wars, just as long as you aren't running Windows
Beep beep.
I have never tried Gentoo but I ran FreeBSD for a while. With FreeBSD you have source for the whole system as well as for any "ports" you install. There are procedures for doing a "make world" that recompiles all of it. You can get the source changes to go to the next version and with a bit of chicken and egg stuff about compilers if that has changed, you can compile yourself the upgrade.
I ended up bagging it because there is a fair amount of stuff for Linux that is missing in BSDs (or I wasn't willing to expend the effort to get to run through compatibility mode). Java, Flash, etc. no flames please, I know some people work these things out - I just got tired of the hassles with it when I could rpm/apt-get it with Linux.
I thought the FreeBSD was really high quality though.
Is Gentoo a similiar model? Has someone used both?
Besides, before doing any comparisons on Debian vs. Gentoo they should have compared Gentoo vs. Gentoo on different optimizations. Like using -O2, -Osize, -mfp-math=sse. Comparing video drivers. Trying different filesystem types. And a whole gaggle of other configurables at compile-time.
You'd be yelling bloody murder if Microsoft sponsored a study without doing this sort of research before pitting Windows vs. Linux.
Doing the Right Thing should not be preempted by making a buck.
Using it. It rocks. Best Linux distribution yet.
So are Debian, RedHat, SuSE and Slackware, according to Debian, RedHat, SuSE and Slackware users (respectively). I take it you're a Gentoo fan?
"A door is what a dog is perpetually on the wrong side of" - Ogden Nash
There are a lot of issues one can bring up with the test - not identical versions of various software; different X drivers, one distro will have patches missing in the others and so on. Clearly, that greatly influences the results.
And that is a good point to take home. Optimizing compiles is _not_ the panacea for speed and responsiveness that - a minority, I believe - of source-based distros tend to bring up. There are so many other factors intimately involved in it that any benefits are generally lost in the noise.
For some specific components, it can be a good idea - but for those, most distros tend to ship several optimized versions that the installer chooses between at installation time.
Another domain that benefits are specialized, compute-intensive applications; things like simulators or other technical stuff. But then, those apps are generally tweaked and compiled by their users no matter what distro is used anyway.
Trust the Computer. The Computer is your friend.
Creating the Test
Obviously, the most direct way to test the compile time optimisations of Gentoo is to compile 3 Gentoo systems with different settings and then compare them. However, this really misses some of the story. Each distro has it's own attitude to the kernel and whilst it may be i386 or i586 compiled, it will have had some adjustments made to it. In reality, few people will be choosing to install Gentoo with less than recommended optimisations for their system. They are interested in a tradeoff between optimization and convenience. Thus, we aimed to compare Gentoo with an i386 based distro and an i586 based distro. With the assistance of some PLUG members we decided on Debian as the i386 candidate and Mandrake as the i586, in part as those were the options where people were available to do the install.
The following tests were outlined: Time to open a large sheet in Gnumeric. Time to perform a kernel compile. Time to perform "Duplicate Image" in Gimp. Time to perform a heavy "Unsharp Mask" in Gimp. Time to start OpenOffice "from scratch". Time to reload OpenOffice.
User experience to be assessed by all present on the day, using Galeon, Evolution, OpenOffice.
To make it easier to standardize for these tests we picked Gnome 2 as the Desktop Environment. This necessitated the use of the "Testing" flavour of Debian.
Hardware
The boxes from Evolution Xtreme had the following configuration:
Celeron 2 GHz Processor
256 MB DDR RAM
SAMSUNG - SP4002H 40G HD
MSI 6533E main board
All SIS chipset
lspci output:
00:00.0 Host bridge: Silicon Integrated Systems
[SiS] SiS651 Host (rev02)
[ 00:01.0 PCI bridge: Silicon Integrated Systems
[[SiS] SiS 530 Virtual PCI-to-PCI bridge (AGP)
[ 00:02.0 ISA bridge: Silicon Integrated Systems [SiS] 85C503/5513 (rev25)
[ 00:02.5 IDE interface: Silicon Integrated
[Systems [SiS] 5513 [IDE]
[ 00:02.7 Multimedia audio controller: Silicon Integrated Systems [SiS]
[ SiS7012 PCI Audio Accelerator (rev a0)
[ 00:03.0 USB Controller: Silicon Integrated
[Systems [SiS] SiS7001 USB Controller (rev 0f)
[ 00:03.1 USB Controller: Silicon Integrated
[Systems [SiS] SiS7001 USB Controller (rev 0f)
[ 00:03.3 USB Controller: Silicon Integrated Systems [SiS] SiS7002 USB 2.0
[ 00:0f.0 Ethernet controller: Realtek Semiconductor Co., Ltd.
[ RTL-8139/8139C/8139C+ (rev 10)
[ Installation
[ The 8139 NIC used the 8139too driver in all installations.
The Debian box was installed by Garry Buckle with aid from Matt Kemner. A standard Debian Testing setup was installed, but X was not persuaded to start with the stock SIS driver. As the stock kernel did not contain framebuffer support a new one (v2.4.21) was compiled to get video working. Upon testing with hdparm, it was apparent that this machine was having troubles setting above udma2. Eventually this problem was traced to the HD cable, a salutary lesson in the variability of identical hardware setups.
[ The Gentoo setup by Bill Kenworthy was compiled using the "stock" kernel source and the "-march=pentium3 -pipe -O3" compile flags. hdparm was needed to get dma on the ide running, despite it being in the kernel, but "xfree --configure" worked for Bill using the stock SIS driver. (Apparently the first time the command has worked for him!) The Gentoo install suffered a couple of false starts due to a typo using grub and OpenOffice was still being compiled the night before the test. 11 hours later the OpenOffice compile was still going and we thus had to regretfully abandon that portion of the test.
Garry's friend Joris (visiting from Belgium) put in the hard work on the Mandrake install, clicking "Yes" and "Next" like a pro to complete an impressively easy install. It defaulted to vesa framebuffer display, similar to the Debian install.
The Tests
[ Test 1 : Opening a 32,000 line sheet in Gnumeric.
[ We began this test with the mindset of testing
But been thinking of switching to Gentoo to try it out. I was going to do that cause I thought specific compile might be faster than RPM......now I'm just confused. Anyone wanna put their two cents in on this?
... with -O2
Aren't most binary packages built with -O3?
I hereby place the above post in the public domain.
I tried Gentoo for a while and eventually gave up. The problem is that you still have dependency hell. Most packages look for stuff at compile time, and many have optional components. For example a video player may not include support for QuickTime unless the libraries are already on there at compile time.
So the fun starts when you start installing stuff, they don't include support for other components because they weren't there at compile time, you then discover the missing support, have to install the missing libraries and then recompile every package.
This is an especially big issue with multi-media stuff, and gets many layers deep as some libraries have optional components depending on other optional components.
About the only way to guarantee a fully uptodate system is to keep doing complete recompiles of the entire system until there are no changes.
The best way to optimize gentoo is too bootstrap it yourself. This yields impressive performance gains. In my case I settled on these flags:
-mcpu=pentium4 -march=pentium4 -mmmx -msse2 -Os -fomit-frame-pointer -pi
pe -fforce-addr -fforce-mem -ffast-math -mpush-args -mfpmath=sse
The other reason I use gentoo, is that it's easy to stay current. Once a week I do an emerge sync, followed by an emerge -u --deep world. The Gentoo package management system rocks.
I dual-booted Debian and Gentoo thinking I would migrate completely to Gentoo for desktop use and Debian for servers. Galeon on Debian was way faster. In the end, I got fed up of compiling and re-compiling X and stuff trying various gcc switches. Debian is fast enough to make sitting about wiating for stuff to comlile a waste of time. And apt-get is every bit as good as emerge.
1000s Warcraft Gold while you sleep
But I think I've read it a few times before already . . .
/home/misskim/public_html/linmagau.org/pnadodb/dri vers/adodb-mysql.inc.php on line 170
/home/misskim/public_html/linmagau.org/pnadodb/dri vers/adodb-mysql.inc.php on line 170>
:)
Here's a complete repost of the text in case it gets slashdotted. Hmm, guess I should post as AC, but wtf. Just don't mod this up.
Warning: Lost connection to MySQL server during query in
Warning: MySQL Connection Failed: Lost connection to MySQL server during query in
mysql://misskim:@localhost/misskim failed to connectLost connection to MySQL server during query
Hmm, guess I should post as AC, but wtf. Just don't mod this up.
everything in moderation
Try using binaries compiled for an i686 on a Via C3-1G, for example.
Yes, if your entire reason for using Gentoo is to have control over how apps are built, starting from stage3 pretty much defeats the purpose, and yes, if you don't know what you're doing, then rebuilding X can be a real drag. However, I have to say that I appreciate the fact that Gentoo manages to avoid a lot of legal issues by having the user build the packages her/himself. Honestly, I'd love to be Ogg Vorbis-only for music on my computer, but when I own a portable MP3 player, an MP3-capable DVD player, an in-dash MP3 player, and use OS X at work where QuickTime Ogg Vorbis support is dodgy at best, I want lame. And I want lame support built into kdelibs or whatever lame support needs to be built into so that I can drag-and-drop 192kbps ABR MP3s from an audiocd:// ioslave window to my mp3 folder. ;-D
My own experience has been that Gentoo outperforms Debian on my hardware, but only after I've done some tweaking on Gentoo. YMMV.
Stating on Slashdot that I like cheese since 1997.
I got hooked on gentoo because of the bleeding edge factor, I usually have apps built and installed on my machine within a day or two of revs. That is just somehting that I never found with Mandrake.
This (I think) Is because Mandrake runs it's X server with a priority of -10 (high priority). Gentoo, by default, runs X at priority 0 (normal priority).
Upon testing with hdparm, it was apparent that this machine was having troubles setting above udma2. Eventually this problem was traced to the HD cable, a salutary lesson in the variability of identical hardware setups.
Very telling pair of sentences.
Stating on Slashdot that I like cheese since 1997.
There seems to be little attention given to the fundamental unfairness of this test presented.
The distributions were running with different software versions initially and although this was corrected there seems to have been little consideration given to the minor tweaks given to each different installation used. Which services were running on each system? Were the kernel settings identical in use? Were the machines experiencing differences in performance due to the X setup causing X to add different loads?
etc.
Fundamentally this test was probably not complete enough to suggest anything in particular. Perhaps it would have been better to boot a single machine three times and perform the sequence of events exactly the same each time as this would have also ruled out some other potential factors.
Jon.
http://www.jonmasters.org/
Despite missing an obvious point, I still stand by my original sentiment: this article isn't very informative at all.
Stating on Slashdot that I like cheese since 1997.
Myself, Gentoo's biggest feature was the kernal compile options, adding patches for pre-emptive mulitasking, and improved responsiveness.
Really? Hmm.. I run Gentoo and I use vanilla kernels because I find they perform better. I'm on an SMP box though, so that might have something to do with it. But I tried a couple Gentoo kernels and I had *seriously* bad performance problems. Whenever I was compiling the mouse cursor would get all jittery, as would the scrolling song title in XMMS - even if I niced the emerge down to 12 or something!
Vanilla kernels tend to run really nicely for me and if I nice the compiles down I barely even notice them (even if I don't, I barely notice them, being on an SMP box :)
Maybe I'm choosing bad options in the Gentoo kernel though; do some of the patches (i.e. low-latency and pre-empt) interact badly or something? What options do you use for your Gentoo kernels? Just curious.
One thing the Gentoo kernels are good for, though, is Starcraft in Wine. Dunno what it is about them, but man Starcraft sure runs really fast with those kernels. Vanilla kernels run it really, really slowly. At least in recent versions of Wine; 20020510 was the sweet spot for Starcraft, IMO, but it's incompatible with glibc 2.3 and thus no longer an option. Sigh.
"Caffeine is not an option. Caffeine is a way of life."
i'm glad your super-special system with an entirely different version of gcc can compile faster than my vanilla gcc system, but that's not how this test was conducted.
Hardware-wise it was the same system for each distro, and they listed that mandrake and gentoo are running the same exact version of gcc. So Obviously although gentoo is great, Mandrake's got some optimisation tricks thrown in to speed certain things, be them library or kernel-wise.
The point was also to compare relatively stock installs. Sure, you can argue that you can further optimize gentoo, but you can do the same for Mandrake and Debian. This test compared the out-of-the-box performance of Debian, Mandrake, and Gentoo to see if the optimisations that most Gentoo users are running (which just happen to occur "out-of-the-box") really impact the system speed.
(eom)
1. The very large collection of packages. For example, I don't believe you can apt-get install vmware.
2. The very sensible defaults. After emerge wine, I could run Lotus Notes 5 with no changes at all. I tried to set that up on a RH box with wine compiled from source, and it chucked up loads of errors and didn't work.
That said, it does take a long time to set up from stage 1. You're probably looking at about 3-4 days for the base system, X, KDE, Mozilla, and OpenOffice. I'll use it for my personal machines, but I can't be arsed with all that for run of the mill boxes.
Get your own free personal location tracker
I have been using Gentoo for months now and will never turn back. Little of this has to do with performance and 99.9% of has to do with Portage. Package management, dependency checking and the lot are SO great. Secondly is where performance comes in. Without proper CFLAGS you might as well ignore this. On my Athlon XP 2800 I have this:
CFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer -mmmx -msse -m3dnow"
In some simple tests I have done I have seen this as worth while. I have two pages I have created that might be worth a read:
CFLAGS Guide
Is -mmmx and such worth it?
Hope you enjoy these reads.
Unstable Apps: Our Android Apps Don't Suck
From the article: The Gentoo install suffered a couple of false starts due to a typo using grub and OpenOffice was still being compiled the night before the test. 11 hours later the OpenOffice compile was still going and we thus had to regretfully abandon that portion of the test.
So when does the time taken to compile the app with extra optimizations exceed the time you save on tasks performed in that app? Of course, that's only if an optimized build is faster, which in this tests did not appear to be the case, compared to Debian's oldschool 386 builds and Mandrake's 586 builds (by the way, does Mandrake still give you 586-optimized binaries by default?).
I also wonder why they used -march=pentium3 instead of -march=pentium4. Do they not know that the new Celerons are P4-based? Is -march=pentium4 too buggy? This article leaves a lot unexplained and doesn't seem very scientific.
I can help you with your punctuation if you'd like...
So that the crybaby "I'm a real Linux user because I don't use Redhat or Mandrake" Linux users will realize that Linux is Linux, no matter what distrubution you use.
I tried Gentoo. It wouldn't compile on my k6-3. Put in on my Athlon 700, expecting substantial increases in speed. Boy was I wrong. KDE still took the same amount of time to load. Mozilla still took 5 seconds to load. Gimp was not any faster.
It's not part of the main distro, but there is a kernel-multimedia-2.4.21.0.16mdk-1-1mdk.i586.rpm in Mandrake contribs. Check it out if you want a more responsive kernel.
Does dosemu let you run WP 5.1 so that all the F keys work ? Or is that another configuration you have to track through ancient usenet posts ?
Here you go, the obligatory Gentoo Zealot Translate-o-matic reference!
Enjoy!
The Free desktop that Just Works
The article seems a little slow from where I sit. Here is a mirror.
I did, and seriously doubt this could be a fair test. The only way you could completely miss the point I made and then make it again for me is if you're either trolling or forgetting to take your medication. Which is it?
Have patience and in some 10 years you will be able to make much of even a short, beautifully written article like that.
In 10 years I've seen tech writing go from "let's praise anything Microsoft" to "let's bash anything that's popular." The writing hasn't improved; it's gotten worse. Even more dismal is that testing methods get worse and worse.
Read the article. The reviewers even acknowledge that their identical systems aren't identical!
You'll also become less arrogant, which may help you deal with people.
I'm so glad to see that an Anonymous Coward knows so much about me.
Have a nice day. And try to learn, this time.
Thanks, for your gratuitous, comma.
Stating on Slashdot that I like cheese since 1997.
Does it seem strange to anyone else that in the linked photo gallery, the only picture with a female has been viewed 3 times more than any of the other pictures?
Sheesh.
I guess there's just not much scenery to show off at distro day.
OpenOffice.org!
I switched to Gentoo because it was the only distro (tried several versions of RedHat, Mandrake and even the latest Slackware, have'nt tried Debian yet) that would give me any kind of performance on my useless motherboard with an onboard Sis 530 Graphics Chip. Even Gentoo was kind of slow until I used the Sis drivers from http://www.winischhofer.net/linuxsisvga.shtml. This guy has a ton of really useful info for people with any of these old junky graphics chips and no budget for real equipment. The difference for me was night and day. I tried the new drivers in RedHat and Mandrake. Although there was an improvement, it was nothing like the improvement for Gentoo! The lesson of all this? I will never buy onboard video again! My next box gets Nvidia or something else that works!
might be seen when AMD finally launches the Athlon64. Compiling everything to x86-64, and thereby increasing the numbers of registers substantially, as well as migrating to a slightly cleaner ISA (sorry x86-32 lovers) should render better results than attempting to optimize for a Celeron (ewww!).
On a less serious note, the server seems to be having a little bit for trouble; maybe they attempted to install Gentoo on their server (j/k).
Uttering logically derived and empirically supported truths to the disciples of the orthodox establishment.
Having said that, it looks like the guys doing the testing got their CFLAGS wrong. Gentoo's performance should never be worse than Mandrake -- I reckon they forgot omit-frame-pointer.
Omit-frame-pointer is not a regular optimization. Working without stack traces to hand to a developer if you have a problem isn't really a reasonable optimization unless you're doing something like an embedded system, where you couldn't get at the stack trace anyway.
This is *exactly* what the real tech-heads have been saying for years, what my tests confirm, etc. A minor change in a couple of compile flags above -O2 almost *always* makes very little difference. Compiling your own packages really just plain doesn't matter. Maybe if gcc really was incredibly tuned to each processor, but certainly not with the current compiler set.
Also, the kernel compile is unfair, because gentoo-sources includes a whole load of patches that Mandrake and Debian don't.
And perhaps the inverse is true, too?
Look, the point is, Gentoo is not significantly faster than any other general distro out there. If you use it, it's because you like their tools or packaging scheme. You aren't cleverly squeezing out more performance.
Oh, and last of all, I've seen compiler folks saying that it's not that unusual for -O3 to perform worse than -O2. When I was taking our cache performance analysis bit in university, cache hits and misses really *is* the dominant factor in almost all cases. Loop unrolling and function inlining can be a serious loss.
Finally, compiling for different architectures generally makes very little difference on any platform other than compiling for i586 on a Pentium. The Pentium runs 386 code rather slowly. The PII and above will happily deal with 386 code.
May we never see th
Since I do my compiling while at work and during when I sleep. I also use distcc. I also like how there is no dependency hell, and I know whats in my Gentoo system, with no programs I don't use.
It seems that the people that would benefit the most from a source-based distro and optimizing binaries specifically for their hardware are the ones with the slow hardware that will take too much time to get everything installed for it to be a worthwhile investment of time.
What people are saying on the gentoo forums about this too-brief article.
Wow, thank you, didnt know about that kernel, looks like it has the patches I was talking about. Did a quick lookup on pbone and found the info on it.
This kernel includes patches useful for multmedia purposes like: preemption, low-latency and the ability for processes to transfer their capabilities. The preemtion patches allow a task to be preempted anywhere within the kernel, using spinlocks as markers for non-preemptibility regions. The resulting system response is greatly increased, with measured average latencies under 1ms. Andrew Morton's low-latency patches fix the remaining points in the kernel that cause latency. The setpcap patch allows suid root processess to transfer capabilities to non-root processess, and so making it possible for user processes to run with realtime priority.
In my experience, Gentoo "feels" a whole lot faster on my laptop (P3 600Mhz, 160Mb) than RedHat 9 does. Gentoo, however, will clobber your system while doing updates. I much prefer apt-get update over emerge sync, simply because the rsync that powers Portage takes a very long time to update your portage tree on semi-old hardware. People have told me to "just run the updates at night", but doesn't that take all the fun out of it? For having the most up to date packages, all the time, Gentoo is great. It comes at a price, though. One thing is for sure: Your machine will never work as hard with any other distribution but Gentoo.
I can't recommend Gentoo enough. After spending under seventeen weeks compiling the system under several combinations of flags such as "-mathlon-xp", "-mprocessor-serial-number=948FCDE", "-O42", and "-fomit-stack-pointer" I have finally found the perfect combination that gives me a 1.5% performance increase while running my two most commonly used applications: the "joe" text editor and, of course, BitchX. And now thanks to the magic of Portage, I can reproduce these dramatic performance improvements on any system, as long as it is identical in every way to my own and I'm willing to sacrifice four-to-five days to a full compilation from source.
Wait to go, Gentoo. You can't ignores the savings provided by target-platform specific compilation!
To be fair, I'm running RH9 until sometime tonight (have a chrooted Gentoo build waiting to be installed) but I'm running a Planet CCRMA kernel, which includes a number of the ck-sources patches.
Stating on Slashdot that I like cheese since 1997.
VMWare on Debian is best accomplished with alien to convert VMWare's RPM to a .deb, and installing this via dpkg.
As for sane defaults -- Debian tends strongly toward this in my experience.
What part of "gestalt" don't you understand?
I've tinkered with various distributions over the years and the main reason I like Gentoo is the package management system, Portage. It is by far the best package mgmt system I've ever used in a Linux environment. The thought of RPMs frighten me.
It's hard to say if it feels more optimized than say RH 9 or the latest Mandrake, but it's perfect for my needs as a desktop system. I am able to play Warcraft III under Transgaming's WineX without a hitch.
Also, with the install process and actually compiling from sources, you will learn more about linux and how it works in the first week than in the first few months with other distros - my opinion/personal experience of course.
Sites to help you get started:
Gentoo Installation Guide for x86
Optmized CFLAGS for compiler - Be wary of Pentium 4 options. See forums for more information.
Gentoo Forums - arguably the best linux support site on the 'net
I tried RH 6 or 7 a few years ago on my desktop machine, but I always had trouble installing programs. Dealing with dependencies, make files, etc. was completely beyond me, and I scrapped it and returned to windows.
Then I bought a mac and began playing around with fink. I had been using various Linux machines at school and had gotten pretty competent with the command line. I really liked the fact that fink checks dependencies, downloads the files, and installs them with one command. When I was showing this off to a friend, he told me about Gentoo and I decided to give it a shot.
I learned more about UNIX-type systems in the week-long install than I had in all my previous experience. The Gentoo installation process will give anyone with half a brain a fair idea how their system works by forcing them to deal with the various config files that they would not have to otherwise deal (until something messes up) in precompiled distros. I had never compiled a kernel before Gentoo, and they made that somewhat scary sounding task easy.
While the speed of programs compiled in portage is an important factor, my desktop seems much more responsive than it was under RH or Mandrake (two other distros I tested before my recent switch to Linux), it is not the selling point for me. It is the ease of installing programs that portage brings.
I think the performance benefits are related to compiling for a specific arch say P4 over how standard distros package at i386 for compatability reasons. This test would be much more interesting if it was done with an Athlon XP or P4. I'm not familiar with celeron arch though, would /etc/make.conf setup be the same for a celeron as a p4? Why would anyone buy a celeron with Athlons at 2Ghz rated athlons going for peanuts?
Actually I use Debian (2.0.36 kernel), rh 6.2 (2 boxes), RH8 (1 smp box), RH7.3 (1 box), and Gentoo.
I just started using Gentoo. It rocks.
Yeah...my PII/266 definitely takes less than 24 hrs to build X.
:-)
That being said, I'm dubious that blowing the time on compiling your ftp server with all optimizations every time you download a new version really is a worthwhile use of time and effort.
Maybe xmame. Maybe glibc. Maybe the kernel. That's about it. Definitely not 99% of the software on the system.
I don't really think any one distro is much better than the others for development. I happen to use Red Hat, which I do plenty of development on. I have a friend that uses SuSE and Mandrake, and another that uses Gentoo and Debian. All of us write software pretty happily -- all the tools we need are packaged or easy to build for whatever system we want to use. Most folks that I've seen that dislike a particular distro just plain don't know how to use the tools on that distro. I've liked just about every one I've tried, though they all have little things that one does better than the others -- RH shouldn't have shipped gcc 2.96, SuSE should put version numbers in their RPM names (actually, I believe they do these days), SuperRescue should be updated more often.
Heck, the vast majority of Linux users, not so long ago, *were* developers. By that metric, SuSE, Debian, and RH would be the most favored developer distros, though I doubt that contains one iota of useful information.
May we never see th
A new version of some software was freshly released? sometimes all it takes is renaming the ebuild. I hope they don't complicate this anymore than it already is; it's their greatest asset.
The question is: is this ease of packaging because the packages are mostly sources and not binaries?
Liberty.
One has the freedom to configure their system as they would like. To configure the system correctly one learns from going through the process. For those who are aspiring software developers, this is a rewarding challenge. Here is an opportunity to do this with a relatively easy system. For those with older workstations this is a better way to go such that you are in control of what to add to your system and how to optimize the kernel compile. It may not be twice as fast but its *your* system. Freedoms such as this should be highly valued and praised in todays software industry. Bravo gentoo!
"They say travel broadens the mind, so I went over the falls in a barrel." -Thomas Dolby
I didn't see anywhere in the story if the Gentoo installation was done from scratch stage1 or from stage3. I would think this would be a very important piece of information to mention.
Where the Music Matters
no kidding... what a dipshiat
There is no Gentoo
Oh man, I tried this screwed up distro.
I didn't want to spend days compiling things like X, KDE, and GNOME so I opted for a couple of their binary installs (they obviously realized that compiling from source is stupid). What a joke, nothing worked, I couldn't even complete the install.
Whatever... Gentoo users are retarted morons.
There is no Gentoo
It's not worth it. Moving from distro to distro for performance is pretty ridiculous.
Here's what I'd consider, since this is where the biggest differences lie:
* How frequently are new releases announced? Frequent new releases may be better for hobbyists, but a pain in the ass for servers sitting in a back room somewhere. (It's the reason RH can see an enterprise edition that's simply not released as frequently).
* How do you like the packaging system? Try out apt, emerge, up2date (actually, don't -- up2date truly sucks. Everyone using RH who cares about automatic updating has long since started using apt or (IMHO, better) yum).
* How do you like the config system? Most vendors have their own interface to let you configure the system. RH used to use linuxconf, and is now using Redhat-config. SuSE uses yast.
* How much do you care about commercial support? A few widely used distros tend to get the only commercial support. Mandrake gets a little, but if you're going to be running packages that require support (especially binary-only), you're probably best off with Red Hat.
* Which desktop environment do you want to use? Mandrake puts more work into KDE on their system, Red Hat into GNOME.
Arguments about speed or features is really pretty meaningless -- common software is generally packaged for most of these, and rare software for none (use checkinstall to *make* packages -- you'll be much happier). It's still Linux with the GNU suite present.
People that switch from distro to distro (or maintain *multiple* distros on their machine) are nuts, IMHO. It's a fair amount of work to relearn the quirks of each
May we never see th
-O3 are space/speed tradeoff's.
The author's remark about -O2 for Celeron's probably hints at the smaller cache of Celeron's.
Space/speed tradeoffs can work to the disadvantage if the cache is small/bad. (because e.g. a loop isn't entirely cached)
However I doubt this goes for newer P4 based Celerons, since Celeron had their cache upped too through the years. So at least for code, they are
probably still better off with -O3 I think.
(which inlines small functions and does loop unrolling)
Gentoo Linux is an interesting new distribution with some great features. Unfortunately, it has attracted a large number of clueless wannabes and leprotards who absolutely MUST advocate Gentoo at every opportunity. Let's look at the language of these zealots, and find out what it really means...
"Gentoo makes me so much more productive."
"Although I can't use the box at the moment because it's compiling something, as it will be for the next five days, it gives me more time to check out the latest USE flags and potentially unstable optimisation settings."
"Gentoo is more in the spirit of open source!"
"Apart from Hello World in Pascal at school, I've never written a single program in my life or contributed to an open source project, yet staring at endless streams of GCC output whizzing by somehow helps me contribute to international freedom."
"I use Gentoo because it's more like the BSDs."
"Last month I tried to install FreeBSD on a well-supported machine, but the text-based installer scared me off. I've never used a BSD, but the guys on Slashdot say that it's l33t though, so surely I must be for using Gentoo."
"Heh, my system is soooo much faster after installing Gentoo." .debs can be rebuilt with a handful of commands (AND Red Hat
supplies i686 kernel and glibc packages), my box MUST be faster. It's nothing
to do with the fact that I've disabled all startup services and I'm running
BlackBox instead of GNOME or KDE."
"I've spent hours recompiling Fetchmail, X-Chat, gEdit and thousands of other programs which spend 99% of their time waiting for user input. Even though only the kernel and glibc make a significant difference with optimisations, and RPMs and
"...my Gentoo Linux workstation..."
"...my overclocked AMD eMachines box from PC World, and apart from the third-grade made-to-break components and dodgy fan..."
"You Red Hat guys must get sick of dependency hell..." .rpms together on the command line, and that problems
hardly ever occur if one uses proper Red Hat packages instead of mixing
SuSE, Mandrake and Joe's Linux packages together (which the system wasn't
designed for)."
"I'm too stupid to understand that circular dependencies can be resolved by specifying BOTH
"All the other distros are soooo out of date."
"Constantly upgrading to the latest bleeding-edge untested software makes me more productive. Never mind the extensive testing and patching that Debian and Red Hat perform on their packages; I've just emerged the latest GNOME beta snapshot and compiled with -O9 -fomit-instructions, and it only crashes once every few hours."
"Let's face it, Gentoo is the future."
"OK, so no serious business is going to even consider Gentoo in the near future, and even with proper support and QA in place, it'll still eat up far too much of a company's valuable time. But this guy I met on #animepr0n is now using it, so it must be growing!"
-
Looks to me like they compiled using pretty much generic flags. As an exaple, my cflags are as follows: CFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer -fprefetch-loop-arrays -falign-functions=4 -funroll-loops -ffast-math -fforce-addr -mmmx -msse -msse2 -mfpmath=sse,387" Also, we may have to question their ability to properly compile a kernel. Possibly they did a generic kernel with everything but the kitchen sink thrown in. The idea of Gentoo is that you compile the kernel for YOUR system and not generically.
"The strong will do what they want, the weak will do what they must."
-Thucydides
Although I never actually *measured* anything, I have been moving all my boxen (except for one Duron on which I have found it quite impossible to compile Gentoo) to Gentoo 1.4rc4. I was actually in the process of building my own compile-in-place GNU/Linux called "Q-Gnu/Linux" when I discovered Gentoo did it all, and did it better. I was all RedHat before that (going so far as to wear a red fedora on parties - I have two of those). I find Gentoo as opposed to RedHat quite impressive, at least. My professional workhorse (on which I'm currently typing) is a Toshiba Satellite Pro 4300:
..with 384MB RAM.. and was becoming annoyingly slow in things requiring major GUI complexity, like OpenOffice, and at compiling many Java classes.
:-), and pretend.. :-) :-)..
model name : Celeron (Coppermine)
stepping : 3
cpu MHz : 597.077
cache size : 128 KB
Compiling Gentoo on there allowed the machine a third chance at life, the second one being when I got it (already old then) and installed RedHat on it, over that would-be-OS it came with. It just feels that much faster again. I am no longer annoyed by it at all. It took more than 4 days to compile all I wanted from the Gentoo 1.4rc4, but it was *well* worth it.
I moved my personal little server, an Athlon Thunderbird, with the same impression. Currently running
emerge system
on my brand new Athlon XP 2600, expecting much from it.
Bottom line: Nothing but Kudos for Gentoo, wondering what went wrong during the tests described, or whether somehow the subjective speedups I have experienced are just auto-suggestion. I think not. I have been staring at CRT's since 1980, thats 23 years folks! And I tell ya compiling stuff yourself is worth it. So if you have time on your side, go for LFS, which I did, and slowly ground into Q-GNU/Linux. If you have some time, but not *that* much time, go for Gentoo, if you have no time, you poor shmuck, either get a life, or install SuSe
If you invest a lot of time in learning a distro, you're terrified that it might not be the best, and will spend ridiculous amounts of time insulting the others.
Hence, the distro wars.
May we never see th
Mandrake while my favorite choice, doesnt include the best pre-emptive kernels.
L icense: GPL :
You mean like this one (from contrib for 9.1)?
Name : kernel-multimedia-2.4.21.0.16mdk
Group : System/Kernel and hardware Source RPM: kernel-multimedia-2.4.21.0.16mdk-1-1mdk.src.rpm
Packager : Danny Tholen
URL : http://www.kernel.org/
Summary : A preemptible Linux kernel, which reduces the latency of the kernel.
Description
This kernel includes patches useful for multmedia purposes like:
preemption, low-latency and the ability for processes to transfer their
capabilities.
The preemtion patches allow a task to be preempted anywhere within the kernel,
using spinlocks as markers for non-preemptibility regions. The resulting
system response is greatly increased, with measured average latencies under
1ms. Andrew Morton's low-latency patches fix the remaining points in the kernel
that cause latency. The setpcap patch allows suid root processess to transfer
capabilities to non-root processess, and so making it possible for user
processes to run with realtime priority.
[some uninteresting fields removed in aid of the lameness filter]
The next one for 9.2 contrib will most likely have the O(1) scheduler also.
They optimized Gentoo for the p3 platform? Celeron 1.4 ghz and above is based on the p4 core.
(-k) Tells emerge to use binary packages (from $PKGDIR) if they are available, thus possibly avoiding some time-consuming compiles. This option is useful for CD installs; you can export PKGDIR=/mnt/cdrom/packages and then use this option to have emerge "pull" binary packages from the CD in order to satisfy dependencies.
Preemptive multi-tasking just means that a process can be interrupted at any point and another process, or the OS, can make use of the CPU. Preempting the kernel means that actual kernel code can be interrupted.
There are other distributions that include kernel patches as packages. Debian, for example, let's you patch your kernel with a compile option passed to make-kpkg.
I really don't understand how Linux is supposed to run faster just because one group of people, as opposed to another, package some OSS software. Its the same software! Who cares if its Red Hat or Debian, gcc is gcc. If you're testing 3 distros on the same hardware, with the same software, written by the same people.. how is it that we honestly expect one to be faster than the other?
Its not like we're comparing Windows 95 with Windows XP, where the entire underlying libraries are vastly different.. we're talking about Debian distributing GCC and Gentoo distributing the same thing. While compiling for an XP processor only vs compiling for anything made since the 386 will yield performance gains, none of them are truely 'real-world' gains.
I use Gentoo myself. I enjoy staying bleeding edge. I do not run a production server so the very "ancient, yet stable" mantra of Debian does not interest me. I'm running 2.6.0-test2-mm2 for my kernel right now. I like playing with software. Gentoo is aimed at a person like me. I can tweak it, play with it and fully enjoy my computer and my OS. Thats not for you? Great! We have about 3 million other distros, all with their own aims, for you to choose from.
Honestly I think this in-fighting in the Linux community is sickening. Are we really a community when we trash ourselves, who are all on the same team, as much as we trash the competition? I like and use Gentoo. Its made for people like me. Rather than trash Gentoo about long compile times, I believe that you should simply identify what you would like to benefit from Linux and pick a distribution of it that suites your needs. We need to act like a community again, not like spoiled brats.
For a litle while, Danny Tholen (one of the helpers on the mdk kernel) had a multimedia kernel in Cooker contribs, using backported preempt and so forth patches.
I think they should make sure to use the same cflags as debian or mandrake, except the -march setting. Last I did a src.rpm compile on a mandrake distro they used flags like -ffast-math which makes a big difference. I've also seen people using stupid flags like -mfpmath=sse or -mfpmath=sse,387 which makes performance worse. Some people tend to add both -march and -mcpu which is silly. There's lots of things you can do wrong with cflags. Also the distros are not compiled from the same source so it's not fair at all. Every distro has it's own patches and other things they do to optimize.
I don't think this is proof that compiling for your cpu doesn't help, since there's so many other things that can impact performance. If they did the same test with _all_ gentoo systems, then at least one would know whether cflags matter much or not.
One of the arguments I've always heard incorrectly used to promote Gentoo is that your system will BE faster because you've built everything from source with optimizations enabled.
I think this is largely BS.
In modern computing environments, the system bottleneck is not commonly the CPU. Most workstations and many servers, as they're used today, simply spend all of their time waiting for something interesting to happen. Something interesting usually means waiting for the user to push a button, waiting for the disk to send a chunk of data back, waiting for some packet to take a trip back from over the network. More MIPS and nothing else simply doesn't make a difference for the common workload.
This doesn't mean that there aren't cases where a system will spend a lot of time burning on the CPU. But these cases are often identified by their developers and are addressed accordingly, in a variety of ways. The developer may choose to employ a more complex but faster algorithm, offload it to specialized hardware, rewrite in a lower level language, etc.
If the package you're installing doesn't have compiler optimizations already set in the Makefile, there's probably a reason for it.
Therefore, blindly taking each package and running them through gcc -fomit-frame-pointer -O8 -march=i686 -mcpu=i686 blah blah is basically system admin masturbation.
I like Gentoo, I'm running it right now, but I don't use the optimizations argument.
30% Redundant
Really wish the moderators would look at post times. Its not redundant if posted first.
Given how much better Portage is than any of the other management systems, I'd say Redhat is going to suffer big loses at the hands of Gentoo (Debian would too but the effect will be drowned out by the damage Debian is doing to Debian).
So far I've converted six machines to Gentoo, all from Redhat because I couldn't face upgrading with RPMs anymore.
TWW
"Encyclopedia" is to "Wikipedia" what "Library" is to "Some people at a bus stop"
there are couple more optimization flags that would have helped.
but thats not the only problem. they used different display drivers and it could be possible that framebuffer driver is better than sis driver (especially that this looks like shared framebuffer system).
I know I use it for the speed gain, and to say that compiling your own packages doesn't matter is absurd! If you know how to and properly configure your compiling flags, the speed gains are tremendous. I also agree completely that disk i/o and fs type are the determining factors for many tests, so I agree with the statements of programs running at the same speed while writting from or reading to disks, but if you just try gentoo, the learning experience and speed gains are very noticeable.
In the last few years, I've tried:
RedHat6.2 (what's this whole linucks thing about?)
Solaris 8 intel (yuck - slow, hard to use)
SuSE 7.0 (ick)
SuSE 7.3 (I think, still ick, crashed)
Debian Woody (Outdated but good. Got fed up with old versions of everything eventually)
FreeBSD 4.8 (Fast+nice, no sound, barfed on my USB mouse for some reason occasionally though. Gave up fiddling)
SuSE 8.2 (Why do I go back to SuSE? Still sucks. What is this awful YAST thing doing?)
Gentoo 1.4rc-whatever-they're-up-to-now (stable, fast up-to-date. Takes forever to install)
Personally, I'm sticking with Gentoo. It just works. type emerge xine and half-an-hour later I'm watching the Matrix2 trailer.
Here's a script that helps you determines which CFLAGS are compatible with your CPU:
From my personal experience, I can attest to the validity of the article's argument. It has been my experience that general purpose software (X11,KDE,etc.) does not gain any significant performance advantage when compiled from source with tweaked gcc compiler options. And there are plenty of other folks who have for years claimed the same thing. Perhaps the most significant reason for this is that modern x86 processors do their own optimizations (instruction re-ordering, etc.) internally. So the vanilla "i386" option is just fine in most cases. The other reason why option tweaking is pointless is that developers typically set their own optimized compiler settings in their Makefiles if it's really going to make that much of a difference. (and incidentally, some compiler optimizations such as -ffast-math aren't even safe to apply generically to all software on a machine) So this whole "which distro is faster" thing really is a dead issue.
That being said, there are a handful of cases where optimizing for your specific processor CAN slightly improve performance. (typically heavy number crunching routines). Some software like gzip, bzip2, gnupg, povray, fftw or other math libraries, etc. may benefit. But that's no need for Gentoo. Debian source packages are trivially easy to retrieve, set optimizations, and compile. It's highly automated, just like Gentoo. The only difference is you aren't forced to do that for every piece of software on your machine.
I don't think -O3 does loop unrolling, based on the GCC docs. Inlining, yes.
Gentoo certainly isn't a /bad/ distro, imo. In fact the portage system is quite nice for installing software. It's when you want to uninstall something that you run into problems. AFAIK, emerge/portage still has no ability to warn you if you're about to unmerge something that is depend for something else installed. Nor is there a quick, easy way to find out which of your /installed/ packages depend on which other installed packages. That, I think, is it's biggest shortcoming.
If you invest a lot of time in learning a distro, you're terrified that it might not be the best, and will spend ridiculous amounts of time insulting the others.
Maybe we should start a sort of parody, where we pretend to be massively loyal to different desktop environments and each constantly flame the other one. It might show these distro-warriors how silly they're being.
Also, the kernel compile is unfair, because gentoo-sources includes a whole load of patches that Mandrake and Debian don't.
From the article:
That looks pretty fair to me.
Completely agree. I tried Gentoo for a while, emerging an entire X11 system with KDE from stage 1. The gains I noticed turned out to be because of the improved KDE, not from the optimizations. If there was any gain in speed it was more than offset by the time it took to bring in new updates and troubleshoot the ones that didn't work correctly.
As you also mentioned, I did notice a small increase (maybe 5-10%) after recompiling my povray binaries with aggressive optimizations. I did get a vast improvement after using a demo version of the Intel compilers and a pretty good improvement after linking with specialized math libraries. Of course, these gains were also offset by the time it took to implement them. And considering that a $50 CPU upgrade gave a twofold improvement, I'm more likely to upgrade hardware now than spend time tweaking.
To be fair, I should mention that I started using more lightweight window managers (fluxbox) and made an ancient laptop usable once again.
First of all, I switched from Slack (tried Debian and SuSe before) to Gentoo and I did noticed the difference in speed. In real life, Gentoo is faster!
Second, don't you think there is something wrong with this test? Did I only noticed that or what? Please somebody explain me how is it possible that Mandrake won almost all of the tests?
Mandrake was compiled for i586, and it was runing on i686 so the logical conlclusion would be to compile everything as i586 but to run it on i686..? Something definitly wrong here...
I have fast machine (amd 1800+) and I don't care about compiling time, besides it goes fast, so why bother?
Why do you complain that it takes so looong to compile stuff? Ofkoz if you have old machine - but you don't have to - you can always get binaries.. so what's the deal??
This test is wrong and prooves nothing - I run Gentoo and I can see it's faster.
It just requires little time to read about how to tweak it and than just to compile what you need.
You could say Gentoo is like LFS but with very good packaging system (this is what LFS lacks) and it's much more easy to manage.
-- All Gods were immortal.
-- S. Lem
Has anyone tried to use Intel's icc compiler to compile Gentoo?
I first jumped onto the linux bandwagon with Redhat 6.0, and have tried several different distros since (Mandrake, Suse, etc.) Tried Gentoo once. After spending over a day trying to install and compile (and troubleshoot), the damn thing wouldn't work. No boot for me. Said "fuk it," and went back to Redhat. Having spent so many years around non-optimized operating systems (i.e. Microsoft Windows), I found that the Gentoo headache wasn't worth it. To each their own, though. E.
I simply do not like distributions you have to compile because it is just too time consuming. I only compile software when the software is a source-only release or when I want to patch the software. Spending half a day compiling my distribution is unacceptible.
.NET/CLR approach of compiling the code into an intermediate format and then running a just-in-time compiler during the first run. Only the code that is used is compilied (with specific optimizations for the machine) and the code is permenantly cached.
;-)
I like the
This solves three problems that source code compilation/optimation does not:
* its faster than lexing, compiling, and linking
* it allows me to optimize binary-only software
* it allows the intermediate binaries to be cross-platform.
This way the developers can spend time optimizing the code to a virtual target platform, and the administrators can spend time administrating.
Especially when you link to a lot of libraries, dynamic linking can often take a lot of milliseconds. Prelinking helps a bit, but static linking is the fastest. On my machine running a simplest program takes 5ms when dynamically linked, 3ms when statically linked, "user time" is 1.1ms vs. 0.4ms.
I have bouced back between Mandrake and Redhat for a couple of years. Tried Gentoo last mo.nth, and although it has been quite challenging for me, I have a mich greater understanding now of how Linux works. It has forced me to go beyond the GUI (and the re-install if I really dorked things up.)
This is why I enjoy tikering wiht Linux... it's like working on cars without getting you hands dirty.
How sleepless is the egg, knowing that which throws the stone forsees the bone.
debs are actually renamed ar archives that conform to a specification and have been renamed. I have come across guides on unaring a deb,altering it and then packing it back up. I've never had to do it but the guides on how to do it didn't seem too bad.
I've never had a dependency problem I couldn't fix in Debian with a little noodling around with the system. On the other hand, I do sometimes recompile source debs to get options that I need. For instance, I deploy Netatalk with dhx authentication. I have to install the crypto devel libs and tweak the rules file to get it. Thankfully, I can build on one box and deploy the custom deb whereever needed.
I suspect that I could get most of the benefit of Gentoo by rebuilding the kernel, glibc, and maybe the xlib source debs with i686 options. At some point, I would like to see where the most benefit is reaped from custom compilation.
Do you have any evidence to back this up? Did you compile and benchmark a program with default optimizations and then compile and benchmark the same program with optimizations?
Why screw around with compiler flags when you can "crack open" the source code. I guaruntee if you are a competent hacker you can get more performance out of your software by doing that.
Although I agree with you that you may learn alot by compiling source yourself and learning how to optimize executable binaries, you will learn and possibly contribute even more by optimizing the source code.
You can afford all those electronic devices, but you still use a non-standard (crufty; that is to say, shitty) CPU? That seems a little silly. Pick yourself up a nice G5 or an Athlon 2600+. Stable as all hell, and speedy to boot. Once you've done that, be a real man and install Mandrake post-haste. You can use the time save from compiling to go and kill a wild animal or have sex with something. Or even just to play a rousing game of Pingus or Star Control.
When I see things like the program time going from 39m 08s to 11m 21s (when all that was changed was a minor version number) that just screams -bad testing-.
You should repeat every one of the tests a number of times, and make sure that you get the same (or similar) results each time. You should not NEVER expect a 4:1 ratio of performace doing the exact same task on identical hardware. Bells should be going off that say "casual testing" when you see something like that.
Besides, there are so many variables that have to be kept the same between the different installs - which services are running, how they are configured, what kernel options are set, what patches have been applied to the kernel, which modules are loaded... If you pick up Redhat 9 and do a "kitchen sink" install, you will hardly have the same amount of free RAM for caching, etc. compared to doing the "regular" install of some other distro that leaves out things. Hopefully it's obvious that such a comparison that would not be fair at all.
In short, you should take a given kernel source, with a fixed set of patches, options, settings, modules, etc., and complile it with the default i386 options and then a second time with all the fancy optimizaions, then compare those. LEAVE EVERYTHING ELSE THE SAME! Repeat with glibc.
The results in this article are just pathetic. They vary all over the place and are crying out for more rigorous testing methods and procedures. Making a good test is really a science, you have to design the test to specifically measure what it is that you're interested in. For all we know one of those tests could have already had a majority of the libraries loaded into the disk cache, resulting in the huge performance differences.
However, AFAIK PPro/P2/P3/Athlon runs these "legacy" code quite well, so relatively little gain can come from compiler option tweakings.
Install Gentoo without knowing what you're doing, and surprise surprise--it's not necessarily better.
:-) (OK OK, some _other_ distro--I at least admit to being a Debian bigot :-)
Gentoo is NOT a distro for everyone, folks! It takes work, understanding, and patience to get it working, and working optimally. If you don't have the understanding or patience, or don't want to put the work into it, then stick with Debian, or some lesser distro.
Seriously, Gentoo reminds me of SunOS kernel tweaking in the bad old days. Someone would find a stat that approximately related to a given performance claim. Then they'd tune the kernel to improve that stat, without realising that
a) They'd broken the relationship between the stat and the performance it was supposed to be measuring, and
b) They'd slowed down the rest of the system horribly.
I would strongly expect that Gentoo is faster (maybe significantly, i.e. on the realm of 10-25%) than other distros under certain circumstances, most notably under very careful install and setup. However, the 'generic' defaults that RedHat and others come up with to address most of the population just aren't that bad.
"People who do stupid things with hazardous materials often die." -- Jim Davidson on alt.folklore.urban
I am going to move to gentoo. The reasons are
- very last versions of packages (Mandrake that I use at the moment usually doesn't create new packages until the next distro version, KDE is an exception, but is very slow to appear). I know about www.pclinuxonline.com and Texstar's rpms are the reason why I didn't move from Mandrake yet, but I think I'll change to gentoo anyway.
- stock package versions - I don't like distro to change the behavior of how the whole system works, KDE is an example again, Mosfet wrote about Redhat and Mandrake and why he doesn't like them. I agree with him there.
- Compile everything for a used platform. Now here are the questions:
* Is it worth to really use SSE2 math when compiling for P4? I don't remember particular gcc options, but it can use SSE2 math library and SSE2 floating point arithmetics.
* Any other optimization options that people use often? I searched gentoo forum, everyone seems to stop after -fomit-frame-pointer. I know gcc can generate wrong code when strong optimizations are used, but any experience with it?
* Can gentoo use Intel compiler for building the system? I've seen tests and they had shown that Intel compiler generates better code even for Athlons (I have one at home).
- Portage so far seems to be comparable with urpmi in Mandrake. I didn't notice any advantages, but who knows. I was disappointed in Debian packager once, maybe there are hidden features in portage that I won't live without after I find them.
Distcc is "distributed c(++) compiler", and as such only makes a difference if you can use 2 or more machines for the compile. Ccache- compiler cache- doesn't make any difference on the first time compiling. Therefore, these pieces of software being installed on a machine make absolutely no difference in themselves wrt a benchmark compile.
Once I set out to prove that wrong. My test was purely cpu bound, to see the real benfit from the omptimization. I have since lost my resaults ... but you can do it yourself ... Here is what I did
time cat /dev/kcore | gzip -f > /dev/null
My resaults showed that whith correct optimization I would gain upto 10% increse in throughput.
But, in the real world, the gain would be less.
yeah, actually I did, but the results are lengthy and boring. I just say that a simple O3 and arch=(cpu) do make a big difference.
I love working with source code, too. Many of my programs have custom parts in them, and I also write my own. I agree wholeheartedly with all that you said.
That's the only advantage I can see to doing things the Gentoo way. Someone mentioned this on here awhile ago and I really didn't get what he was talking about until he elaborated on it a bit more to me. What it comes down to is why do I need to install libldap just because exim is linked to it. I don't use any LDAP features in exim so why must I be FORCED to have it on my system. Same goes for a lot of other packages out there. With every dist-upgrade/upgrade (well almost every) there is some new library that needs to be installed because a package(s) already installed has had an option turned on that requires extra libraries. Of course with the Gentoo way when you're compiling your own packages you can turn those options off and cut down on the bloat quite easily rather than having to jump through hoops rebuilding a customized deb.
*shrug*
The only way to have the same hardware is to use the same machine for each distro. Period.
[100% ISO 646 Compliant]
SVM, ERGO MONSTRO.
Not to sound like a troll.. But these sorts of questions have been answered long ago by the BSD crowd..
Its still up to the individual, but its been shown going 'make world' type of route is the best choice, if you can do it.
---- Booth was a patriot ----
In order for these numbers to even be looked at, the tests would have to be run a couple dozen times each at least.
My system runs gentoo and i just switched off from mandrake 9.1... I've noticed some performance boosts but like others have said i didn't change for the speed i did it for portage i love that little tool... Also i run -O3 and a bunch of other flags I have a 1.8GHz celeron laptop or as a like to call them p4lite... They should rerun the test with -03 and other commonly used flags... I'm sure most gentoo users compile wiht more then a two or 3 flags... they need to list there hdparm settings also...
I ran "-march=pentium4 -O3 -mmmx -msse -msse2 -mfpmath=sse,387 -pipe -fomit-frame-pointer -funroll-loops -funroll-all-loops -fthread-jumps -frerun-cse-after-loop -frerun-loop-opt -fexpensive-optimizations -falign-functions=4 -falign-jumps=4" for a month wiht heavy usage and i had no problems... then i had to change back to windows... stupid job and stupid software
Contrary to what most users say, for me gentoo is great not because of speed (though it's definitely not slower than others), but because of skipping of dependencies.
Linking against only stuff I have (installed) or want (USE flags) is IMHO a great advantage over binary distros, who have to link against everything and the kitchen sink in order to fulfill arbitrary consumer needs.
This may make gentoo binaries faster, quite possible, it definitely gives a nice feeling to see an emerge "actively" NOT linking against alsa, or X11, or libgnome||kdelibs if you specified you will not use it.
There are other reasons why gentoo is great (forums, anyone?), but this is the main reason for me.
my
I'm also not so sure about their claims. Sure, they built the same kernel on the machines, but what kernels did they use on each individual machine? Sure, they used DMA on all three, but did the kernels on all three have support for the IDE controller chipset built in? If not, did all three use the proper module(s)? If not, there's yet another reason this test is completely meaningless. Did all three systems use the same kernel version and were all three patched the same way? Were the same model drives in all three machines? Were partitions laid out in exactly the same way on all three machines? Were all the partitions on all three machines using the same filesystem types? Were those filesystems all formatted in exactly the same way, with exactly the same version of the utilites (unpatched, or using the same patches on each, of course)?
There are too many variables here to make this a valid test. This is about as valuable as a Microsoft benchmark of Windows vs. Linux.
One of the nagging suspicions I have is that they've used performance-tuned kernels (that would more than likely be the case for Mandrake, though it's probably tuned for interactive performance) and more than likely merely followed the installation instructions for Gentoo and installed gentoo-sources. Further, I'd be willing to bet that there are performance tweaks done on both Debian and (especially) Mandrake that were unknown to the reviewers. I haven't worked with Mandrake for a while, but it wouldn't surprise me if they use some of the patches that come with Gentoo's ck-sources. The Planet CCRMA project (a Red Hat-based electronic music-oriented distribution using apt) uses many of these same patches in their kernel, and back when I used Mandrake, they used some pretty cutting-edge stuff.
It's great that they decided to pick on Gentoo; after all, it's always good to take a critical look at wild claims. However, if they're just doing this to disprove some bloke who keeps saying "Gentoo is better, Gentoo is higher-performance" I wish they'd keep it to themselves because they haven't proven anything to me other than that in the hands of an untrained newbie without an eye toward optimizing performance Gentoo gets poorer performance than the average Linux distribution.
Stating on Slashdot that I like cheese since 1997.
I switch to Gentoo, once my main machine was up and running again. I use to be a Red Hat user, that was fine up until Bluecurve. Then I was a SuSE user, great except for YaST2, granted its a fine program, but using it to install a system over the internet like that its stupid. It's slow and it takes way too long. I don't know why SuSE just doesn't offer ISOs. Then I was a Mandrake user, Mandrake is a the slowest of all the distros I've tried. I went to Debian. It's like Gentoo with regards to package installation, but I tried to install GAim, I need libspell4 or whatever it was, so I tried to install that, it conflicted with something else, so I uninstalled the conflicting library, guess what GAim depended on them both, and there was no way I was going to sit there and figure it out, it was too much a waste of time. Then came Gentoo. Yes, it wasn't as smooth as installing other distros and I didn't get it right each time. I saw GLIS(Gentoo Linux Install Script), and tried it out, it worked except I had to fix the Grub configuration. Then I decided to do another install on the same machine weeks later. The install went even smoother, and I did not use GLIS. I figured I'd go back to Debian, and give it another shot, because its like Gentoo but without the compile times, didn't like it. Gentoo is my one and only distro. If I need help, there is a forum and there are plenty of people to help me. This isn't a troll or a flame, its just my opinion and my experiance.
i have been running linux for 7 years,
and i learned 100% again what i already know
from running Gentoo
.
though I have never used gentoo, I have compiled pleanty of packages for linux for my own personal use and I have found that they are usualy a bit speedier that the binary package, however I think a better performance test would have been to use some sort of highly computational software like computing seti packets or something like that, or doing a very complex math problem or something, Opening a spreadsheet is sort of subjective, and is probably not a very good benchmark
I moved to Gentoo after my Redhat 7.3 system borked and wouldn't apply the latest errata via up2date. I moved because I really didnt want to download all those isos and really I outgrew RedHat.. I wanted the lastest versions of applications.. and I probably did shoot myself in the foot installing 'unofficial RPMs' messing up dependencies. Funny, these days I know how to go about fixing such problems.
The one thing I noticed about gentoo was the community.. on irc.. forums.. bugzilla.. the developers are always accessable and anxious to fix or provide help. The user base is top notch and ALWAYS willing to help out a newbie. I think you would be hard pressed to see a 'RTFM' response to a frustrated user's question.
Why is this? Because almost all Gentoo users realize they have learned more about Linux and the culture of Linux with this distro than any other they have tried.
It's not easy coming from RedHat.. it's probably easier coming from slackware but after your system is built - there's a feeling of empowerment and accomplishment. And for all the folks that helped answer your questions, it's pretty easy to jump in and answer help out the next guy..
I like the fact I run the latest versions available. That's the funny part about Gentoo - the Live CD is versioned but after you install, that version becomes meaningless. The interesting part then becomes your favorite desktop environment, version of apache, flavor of kernel, etc etc, etc and isn't that really what's cool about Linux? Try the development kernel.. beta xfree.. development tree of your favorite app. It's okay.. it's in portage.
I believe Gentoo is a wonderful community-based distro that allows folks to learn and grow with Linux. Bugs happen but these get worked through and it usually turns out you dig into an area of the system that you have never worked with before and come away with a few more tidbits.
It was pretty amazing when I first installed.. I had my choice of filesystems, system loggers, cron, and kernels.. mind boggling.
Bottom Line: if I'm hiring for Unix/Linux support and have 2 candidates.. one with a RHCE and another that runs Gentoo at home, who is probably going to have more depth? Who probably has the Microsoft mindset of calling on tech support for everything. Who probably is willing to dig into and understand a problem an offer their own solutions.
Call me a zealot.. piss and moan about compile times.. benchmark apples and oranges.. say it will never make it to the DataCenter.. all that doesn't matter.. Gentoo is fun. Stop by!
(I'm not here to flame anyone's favorite distro.. just pass on my experience).
the reason gentoo didnt leave the other's in the dust is because they failed to enable omitting the frame pointer, this is a HUGE optimization as it will free up a register (which is extra important with intel only have 8 regular registers). The result of this is far less read/writing to memory and thus MUCH faster code.
The average desktop user has no need to care about debugging information and it is perfectly reasonable to leavew this out for them.
Try the test again with this on and they'll be more than pleased with the results.
proxy
And drinking orange juice makes LSD work better.
my sig's at the bottom of the page.
Of course, some realize that distros are good at different things and don't (seriously) insult any of them.
I use Gentoo on my two main boxes, simply because I toyed with it and haven't found a good reason to switch away yet (two just so I have the same environment on my two main machines). That said, my router runs Debian-testing. I maintain Mandrake machines at work, know my way around a RedHat machine... etc. My 486 ran Slack 8 while it was up. My DECStation runs NetBSD (though that's a different issue entirely).
I catch flack for using Gentoo, RedHat, Mandrake... my point is, it doesn't matter at all. Use the right tool for the job - that's what open source, and moreso just diversity in the computing environment, is good for! As long as everything speaks TCP+UDP/IP, who cares? ^^
--Knots;
Anarchy$ dd if=/dev/random of=~/.signature bs=120 count=1
"Debian would too but the effect will be drowned out by the damage Debian is doing to Debian"
Speaking as a Debian Developer, and Gentoo user (i know, sacrilege and all that).
Debian has a very conflicted nature, it evolves in a mob metality, any changes must first pass the gauntlet of debian-devel-ml where fire and brimstone await.
IF you make it through the gauntlet and have the support of the cabal (sshh, they dont really exist) and ALL the individuals who your changes effect, onlythen do you have a chance of getting the change through.
In the short to medium term it means things a more likely to remain the way they are, which is good if things are already running well.
In the long term, it means debian is doomed, ever hear of the expression "evolve or die" ?
Gentoo's USE settings are the best packaging inovation since apt, however its too radical to make it into debian in the forseeable future.
Debian installer is way better than Gentoo's, but still debian installer only narrowly made it through the gauntlet and much of what they are doing is shrinking debian without violating their precious policy. (they earnt a backdoor key)
Debian is structured in bazzar style, but many bazzar dwellers are trying to modify their stand into a cathedral, these are the elitists who also control the gauntlet.
Debian doesnt have much competition, there arent many non-profit distirbutions at all, i beleive gentoo is listed as non-profit but only exists to make money for drobbins, look at zynot for the explanation.
Whats needed to fix debian is for some real competition to emerge in the same space as debian (and no, mandrake and redhat are not competition to debian). Only true competition will prompt debian to get its head out of its arse.
We have learned that Gentoo runs like crap if it's
set up by someone clueless. The whole point to
Gentoo is to optimize the crap out of it. And NO,
most users do not run a stage3 install. Almost all
users I know run a stage1, or stage2. That's kinda
the point. But yeah. This test makes perfect sense.
They don't like Gentoo. They had an axe to grind.
Amazing that Debian came out on top.
For every annoying gentoo user, are three even more annoying anti-gentoo crybabies. Take Yosh from #Gimp for example.
they haven't proven anything to me other than that in the hands of an untrained newbie without an eye toward optimizing performance Gentoo gets poorer performance than the average Linux distribution.
It's probably not fair to call them untrained newbies. From the article it sounded like there were several skilled people participating in the test.
But yes, provided their hardware was identical like they said it was, what they did show is precisely that. In the hands of someone who makes an effort, but may not go to extremes, Gentoo can perform poorer than a binary distribution. If it's true, this is a useful observation, because it can tell some people whether or not Gentoo is right for them.
In other words, it takes more than just compiling the source yourself to get good performance, and if you're not going to do these extra things, don't run Gentoo for performance.
This is a bit off-topic, but...
The really disturbing thing is that the best time for opening a 32,000 line spreadsheet in Gnumeric was over seven minutes.
This is a perfect example of why, as much as I would like it to be otherwise, I can neither switch entirely to Linux nor recommend others to do so either if they are dependent on any kind of office suite. Excel performs the same task (okay, a bigger task -- my largest spreadsheet is some 59,000 lines) in well under thirty seconds. Open Office runs much more slowly than MS Office on the same hardware and is completely unusable on some hardware that supports MS Office just fine. AbiWord can take thirty minutes just to change the screen scaling with a large document -- MS Word does this almost instantly.
Please don't get me wrong or think I'm a big Microsoft fan. I detest Microsoft, and I've been waiting for Free Software to save me ever since I started using Linux daily in the mid-90's. Common end-user application developers for Linux seem not to use their own products very much or else test them on the latest and greatest hardware. The open source feature set has made great strides since I started using Linux, but the performance of open source office software frankly sucks horribly compared to Microsoft's offerings. This is especially depressing since you'd almost have to try to write software that wastes more CPU cycles and memory than MS software. It doesn't seem to be getting any better, either.
It's not Windows 98 and Office 97 that are too bloated and inefficient for my 1996 IBM Thinkpad with a 120MHz Pentium and 40 megs of RAM -- it's X and Open Office that bring it to its knees. Sure, I could spend a wad of cash to upgrade my hardware so it could handle Open Office, but that's missing the point. OSS is supposed to be more efficient, not less. For myself, this is a much bigger barrier to full adoption than feature parity, which is not a significant issue anymore.
Proud member of the Weirdo-American community.
The major benefit for me was that Gentoo was the first distro I'd used that gave me the slightest clue about what the operating system was doing, and how the software worked.
.conf file, and my Linux experience was pretty frustrating.
.confs you can tinker with and what they do. It gave me flexability while keeping the results trim. The USE flag is the most amazing option I've ever seen.
I'd tried RedHat, Mandrake, and a few other distros that set everything up for me so I could "just use it." The problem was that in just using it, I had no idea what I was trying to use. I would go looking for software to do x, y, or z, and I'd either find nothing that seemed to do the job, or a jillion different apps that all did the job differently, and I didn't know why to pick one over the other. Add to that the sense of being at the wheel of an out-of-control car every time I wanted to make a change to a
Gentoo was a brilliant introduction into how to install a Linux-based OS. It started me off easy -- here's the command line, here are the commands to install the system, here are the
Installing Gentoo was more like playing with LEGOs than installing a system, and when I got done with it, I had a computer that I knew, really *knew*. I knew all the init.d services and what they did. I knew what module was controlling what hardware in my kernel *and* how to fix it if it didn't detect properly. I knew all the apps installed, even by their weird names and locations, and I knew what they were there for. I knew it because I built it that way. And I never had to hunt down a dependency or resolve a version conflict. NOT ONCE. Redhat and Mandrake just installed this mysterious Linux Stuff and threw the computer back at me when done. Gentoo got my hands dirty with building it up, but didn't make me jump through hoops to do it.
The benefit was teaching me what my computer was doing when I used it.
*THAT* is how I wanted my computer to run. And it does. Thanks, Gentoo team!
GMFTatsujin
Actually, the decrease in blood pH caused by the consumption of orange juice increases the secretion rate of LSD through the kidneys and decreases peak serum concentrations.
So, if you like shorter, milder trips, then yea, orange juice makes LSD work better.
It's difficult to see how a smaller, pentium-4 optimized kernel and customized userland resulting from a custom configuration won't improve the performance of your system. If you were to do a binary-only install (impossible with Gentoo, yes?) that was built with Intel's compiler, perhaps it would work better than one built with the GNU compiler. I'd place my bet on the cutom build though.
I don't know about your machines, but a careful look at gtop on my two home systems (a 2.4 GHz Pentium 4 and a 1 GHz Athlon) seem to indicate the main areas of contention tend to be fairly evenly divided between the motherboard and the CPU. Sure, we can measure CPU and disk drive activity independently of each other, but that usually doesn't tell us a lot. Often logjams can be reduced only by upgrading the motherboard.
I repeat. I agree wholeheartedly with what you said.
...kids today, they can't do drugs right anymore- they have to go and do that stupid stuff that'll mess them up for life.
If you invest a lot of time in learning a distro, you're terrified that it might not be the best, and will spend ridiculous amounts of time insulting the others.
;)
Say that in response to the distro wars, and you'll be at +5, Insightful. Replace distro with OS in a Windows/Linux/*BSD flamefest, I think your score would be -1, Pro-M$
Kjella
Live today, because you never know what tomorrow brings
Ok, I'm a gentoo user. I'll admit a sizable percentage of our ranks dont know what they're talking about, i'll even admit that most distro "speed" is in the users head. But most of you are missing the point. Many gentoo users (including myself) installed gentoo as an ongoing learning experience. Sure, there's really no difference between the "l337ness" of typing emerge foobar and typing rpm -ivh foobar. But those of us who have taken the time to understand the portage system have learned a great deal. As an aspiring programmer, this was my distro of choice because it enabled me to learn about gcc. Also, i like the idea of (although most install standard packages) being able to beta test bleeding edge applications. While there are a lot of phoney gentoo users who are under the impression that theyre furthering the opensource movement by emerging packages, gentoo's backbone a highly active community of volunteers who are really interested in Open Source. Basically, all i'm trying to say is that any idiot can probably get gentoo installed and working, but the real point is to understand the OS that you've built, and i've found that gentoo helps me and others do this better than package based distros.
Omit-frame-pointer is not a regular optimization.
Irrelevant of such, its one that many Gentoo uses need. Many Gentoo users don't need stack traces to hand to a developer, period. You also ignore a common optimization used in Gentoo -- -Os, which optimizes for size, producing smaller binaries which load quicker, and take up less RAM.
compiling for different architectures generally makes very little difference on any platform other than compiling for i586 on a Pentium
This is an unqualified statement that doesn't hold. It might be true for some very generic functions, like word-processing and internet browing. However, for many scientifically intense functions, like phylogenetics, architecture-specific optimizations do matter.
I will agree with you that the specific optimizations don't make a huge difference in most cases; in some, however, they will. And of course, the other benefit is that software is only compiled with support for stuff you want, and that you have absolute control over what's there and what's not from the start.
social sciences can never use experience to verify their statemen
Sheesh, another Gentoo fanboy. You all live under rocks around here or something?
BTW, I don't think these guys are into phylogenetics. Can't imagine why - I'm sure it's what everybody uses their Linux boxes for.</SARCASM>
Yeah. Sure.
Can I call you "Mr. L337 Haxx0r"? Please?
Look, Squinky86. I'm not simply pulling this out of my ass. I've had to cover this back in university. I'm not a gcc developer, but I have sat down and gone through generated assembly from the compiler, and have spent many hours tweaking software in every way possible to make it run at a reasonable rate on my old P2/266. There are a very few pieces of software for which arch flags make a measurable difference (as a later poster noted, gzip is one). As for individually specifying flags, I'd be facinated to know what you're trying to use above -O3. You can use -ffast-math. It's unlikely to provide particularly useful results. Approaches like this have been done for a long time (see libmotosh on the PowerPC) -- they can cause the rare, PITA to find problem, and any libs or programs that really need the speed increase have probably done custom work that's even faster than anything you're going to pull with ffast-math (libfftw, for instance). You *might* get some performance gains on povray...but most folks I know compile povray themselves anyway, since it isn't packaged by, say, Red Hat. -fstrict-aliasing is a *very* balsy flag to use if you haven't actually written the software yourself. It's a pretty safe bet that building a lot of unknown software with -fstrict-aliasing will break it. There's a good reason strict aliasing is off by default -- valid C programs (easy ones to write, too) will die with this option, occasionally and in odd ways. You're a damned fool if you use this on *any code* that you did not write or explicitly says that it was written to allow this optimization. I just finished talking to an optimizing compiler designer Thursday who reinforced my feelings about aliasing-dependant optimizations -- they're almost always a bad idea, since the small speedup isn't worth the random problems that you can very very easily induce. -fomit-frame-pointer can produce a small benefit, but surprisingly small, and makes tracking down any crashing bugs or requesting help with a crashing bug infeasible.
If you know how to and properly configure your compiling flags, the speed gains are tremendous
Bullshit. The vast majority of software I've run benchmarks on will never see less than a 10% performance gain (and that's being *very* generous...most will see no measurable change) with anything other than the default -O2 or -O3.
Oh, hell. I was a lot like you not so many years ago, sure that I could speed things up if I just found the right ways to manipulate the code. The only cure for it is actually sitting down and benchmarking things yourself, since you're sure that everyone else is doing something wrong.
Go ahead, you'll see what I mean. Try building libs that tie up a lot of CPU cycles in multiple apps like libjpeg -- that's where you're going to see your best payback for any optimizations. Time a couple runs.
but if you just try gentoo, the learning experience and speed gains are very noticeable.
I think I've adddressed speed gains. As for learning experience, Gentoo is not synonymous with compiling software from source (from that standpoint, Slackware and similar distros blow Gentoo away). I've never bought into the "learning experience" claims -- let folks start out on the GUIs their distro maker provides, and then, regardless of distro, you can quite happily find out what's going on.
This is not to say that I don't think Gentoo is a worthy distro. I'm a bit of a package management aficiado, and emerge certainly interests me. However, the kind of sweeping claims I see the occasional Gentoo user make on Slashdot are ridiculous. The general-purpose Linux distros are all fairly close together. Distro fans tend to be produced when someone fails to understand how to properly use a different distro (or got accustomed to one), or has sucked down some false claims from other folks, or just don't want to consider that the distro they've sunk lots of time into learning isn't far better than any other choice.
Now, if you happen to like Gentoo, go for it. But like it for the legitimate reasons, not inflated false ones. Don't make exaggerated claims WRT to it, because misinformation certainly doesn't help out Linux folks in the long run.
May we never see th
Say, Here's MY CFLAGS list:
CFLAGS="-march=athlon-xp -m3dnow -msse -mfpmath=sse -mmmx -O3 -pipe -fforce-addr -fomit-frame-pointer -funroll-loops -frerun-cse-after-loop -frerun-loop-opt -falign-functions=4 -maccumulate-outgoing-args -ffast-math -fprefetch-loop-arrays"
The fact that they only used a mere one optimization doesn't show you just how fast Gentoo can go. They need a hardcore gentoo optimizer in there for the gentoo box, someone that knows what they're doing. Gentoo is completely customizable but the customization is dependent on the person doing the installing. Hence, I say the person doing the gentoo install is NOT informed on optimizing gentoo and thus renders this test invalid.
[shrug] I'm open to new ideas. Convince us. Compile a couple pieces of software with and without your favorite extra flags versus just plain old -O3 and post your times. My experimentation in the past hasn't turned up any significant improvements, but you're welcome to try on more pieces of software and see if you can find major improvements. Avoid gzip, as this is a well-known exception that many people *do* custom-build with an arch setting regardless of distro.
Normally, I'd agree with the "support for whatever you want" argument, but I've spent phenomonal amounts of time in the past trying exactly that -- shaving down binaries, etc. It just plain doesn't make a difference. My favorite example is rxvt. Rxvt is a beautiful, svelte piece of software, and the fastest xterm clone out there. You can comple out almost everything in the package. But, you know what? Linux's loader and VM system are pretty smart -- they only store one copy of the binary in memory. The speed savings you get are pretty small. Most things these days have runtime-settable featuresets. It just really doesn't make sense to try to poke and prod at your system for the extra 1% of speed, because it's just a waste of your time. If you want to make a much more significant difference, try rewriting a chunk of mozilla or something to use a more intelligent algorithm in one place or another. You'll see much more appreciable improvements. I've rewritten core code in gtk-gnutella and dillo for significant performance improvements -- far, far greater than I'd see recompiling software with different options, actually taking less time, and benefitting all Linux users instead of just myself.
May we never see th
Well, I haven't poked at it recently, since yum really wowed me.
I've seen it crash an uncomfortable number of times. Last I remember, I had to register the darn thing, giving Red Hat a sellable (forced confirmation) email address. The GUI on the thing (admittedly, not the only way to use the thing, but its CLI is much less comprehensive than apt or yum) is terribly unresponsive -- it blocks when there's an operation going on in the background. Up2date requires a custom server for doing what yum and apt can do with regular ftp and http servers. There are many third-party repositories of software for RH which are only supported with apt and yum (come to think of it, I'm not entirely sure that up2date can even handle multiple sources).
up2date runs slowly (yum is also written in python, but it's much peppier). Yum has pretty intelligent fallback downloading. up2date requires an additional flag to run in console mode. up2date can't display package headers.
IIRC, up2date doesn't cache, as apt and yum did, and just doesn't provide all the functions that apt and yum do.
I've always felt that up2date is RH's biggest out-of-box weakness. There's a good reason that the third party RH providers (freshrpms, fedora linux, newrpms, planet ccrma, atrpms, jpackage, macromedia) all use a different distribution system than up2date.
May we never see th
Forget it, I actually wrote something up here mildly intelligent, but its not worth posting, it will be lost in the depths of intelligence of the armchair experts.
on platforms where gcc is really, really bad, e.g. alpha, itanium (ia64) and MIPS. Unfortunately there's no gentoo port for my itanium system, but if there was I'd jump to it, because there are so many programs I use every day (image magick, ghostview/gv, and good old bzip2) which run a LOT faster (we're talking factor of 2, sometimes more here) if I compile them myself using the Intel C/C++ compiler.
Right now, I basically have a debian unstable system which I feel free to clobber in the name of performance, and it works OK. Using gentoo, assuming it would one day support itanium and the Intel C/C++ compiler, would be a much more elegant way of doing things, and get me even better performance with fewer hassles.
I must say, that Gentoo is a great Distro for actually learning some of the things of the Linux environment.
Gentoo was/is my second distro (I tried redhat first), I was intrigued by the idea of doing everything from almost scratch.
Starting from Stage 1, I was able to learn quite a few things that I probably would not have learnt till some time if I had not decided to do a Gentoo Stage 1 setup as you're somewhat forced to learn the basics and have a fairly good foundation to go learn more stuff yourself.
Although I am sure there are other distros out there (including linux from scratch, if that's even technically a distro ) that are like Gentoo, but I find it to be a rather good Distro.
However though, I may decide some time from now to try the "from scratch" route, and perhaps learn even more. Although, I think the think that will keep me with Gentoo, like others have said is Portage, I think it would be great if there was a well maintained Portage-like system for any distro, as a piece of software, even though it's probably possible to get portage working on other distros, but probably not without some major tinkering.
They need a hardcore gentoo optimizer in there for the gentoo box, someone that knows what they're doing....Hence, I say the person doing the gentoo install is NOT informed on optimizing gentoo and thus renders this test invalid.
[sigh] Nobody ever listens to me [Dark City].
Okay, let's take a look at how informed you are. First of all, -mathlon-xp implies -m3dnow, -msse, and -mmmx. -O2 or -O3 is default already on most systems. The only differences -O3 produces is -frename-registers (which does essentially jack on the x86 line) and inlining (which tends to produce very minimal or negative benefits, given the fact that cache misses (which this aggravates) are far more of a timesink for most programs than setting up and returning from function calls). -pipe produces no runtime benefit, though I leave it in my own flags. -fforce-addr, -frerun-cs-after-loop, and -frerun-loop-opt are implied by -O2 or -O3 already. -falign-functions=4 is considered a slowdown for the Athlon line by the gcc team relative to the default (64 on current gcc). I haven't tested -maccumlate-outgoing-args, and I'm not familiar with what it internally does -- the only benchmark I could google for indicated a slowdown caused by it. -ffast-math is a decision of dubious value. Very little code uses floating point math, so ffast-math rarely has an effect. The code that does and actually cares about this degree of performance generally has native implementations that are faster than -ffast-math, since they're special-cased. This can cause software breakage. (We already saw the realization that these sorts of optimizations are of dubious value with Motorola's LibMotoSh for the PPC). -fprefetch-loop-arrays is implied by -O2.
The overwhelming majority of code does *not* have an #ifdef __SSE__ with alternate code.
Basically, the only seriously useful flag you used is that which all distros use -- -O3 (and I generally feel that -O2 is a better choice on modern processors, where cache is so critical). -march=athlon-xp can help, but it's unlikely to make a measurable difference on any but a very few pieces of software. Most distro vendors already benchmark and ship versions of software that benefits with a different arch -- look at RH's different RPMs. -fomit-frame-pointer is arguable -- but you're going to probably see *well* under a 10% performance difference, and you have no ability to track down crashing bugs or send in useful bug reports. -ffast-math can cause breakage, and provides little benefit for almost any package (one exception is povray -- it's a floating point heavy package that tries to be portable). I custom-build povray, but then RH doesn't package povray anyway, so that's not too much of a concern.
Anyway, my point is not to criticize you. I spent my days with a three line CFLAGS string as well, sure that I was producing nicer and better code than anyone else. Then came my benchmarking days and a compiler class and some days picking apart gcc-generated assembly...and I realized that I really wasn't gaining anything.
If you like Gentoo, do it for the legitimate features that it provides (like emerge), and not for some fanciful performance improvements.
May we never see th
I'd have to say that this was one of the most poor performance comparisons I've ever seen.
Not only did they simply seem to download and install gentoo without even thinking about configuring it properly, they did a few little tests with very little explination about each test.
While I'm sure the scores are accurate for their tests, they obviously did not actually use Gentoo the way most people do: Optimized for their particular systems and their software.
Where Mandrake version whatever will always perform exactly the same and function exactly the same, Gentoo grants the ability to compile and configure software exactly how you want it.
Not to mention that the reason I choose Gentoo isn't because of performance - it's because of the extremely simple and easy interface to keeping your system updated and installing new software. Portage is the name.
- It's not the Macs I hate. It's Digg users. -
It looks like I'm the only one to bring this up, but as a native English speaker that frequently has to work in Chinese what caught my eye about Gentoo was its alleged ability to made the bleeding edge character input systems work.
I haven't actually tried it yet, but I'm very intrigued with their on-line instructions showing a working copy of Chinput which is very close to the kind of Chinese input support we see on the Windows desktop and unfortunately this is one area where Linux desktops can really lag. I've had success getting Xcin to work on various distros including Knoppix, but the NCurses look is really not what end users expect in a key-in system these days.
that I couldn't care less about wheter it is a source or binary distribution.
What counts is to have the latest (and greatest) version of the programs. They tend to be better more bugfixes etc. (and new ones of course)
I run debian stable right now, but as soon as I get a new harddisc, I'll turn to debian testing.
With a source dist I guess you are even more on the bleeding edge, right? Or at least, could be...
Evolution of Language Through The Ages: 6000 BC : ungh, grrf, booga 2000 AD : grep, awk, sed
Sure gentoo can take a while on older hardware, but on new hardware, such as an Athlon XP 2400+, I can build X and Fluxbox in 84 minutes AND have whatever support I need compiled into it and not what I dont. Also portage is super easy.
FreeBSD Passes 9000 Ports
There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
You're arguing with a Gentoy fanboy, and you're using actual facts and figures to back up your arguments. You may as well give up now and save your sanity. These Gentoy users wouldn't understand a real world fact if you beat them with it (Lord knows I want to)
Maybe you should go back and read the Gcc manuals and figure out what all those fiddly little flags do, because it is clear at the moment that you have no idea.
If you can't work out why -mcpu=pentium4 -march=pentium4 -mmmx -msse2 is redundent, or why -ffast-math is a bad idea (Or at best, a waste of time), then you have no business compiling your own software.
I hope to God you're not actually allowed near anyones production server.
What about prelink? I believe that RH already comes with it by default, what about Debian and Mandrake?
Gentoo doesn't, which would make the test _VERY_ unfair.
While it really isn't likely that Gentoo is more than 10% faster than other systems in any given operation there are reasons I don't feel these numbers reflect anything.
First, the tests fail to mention kernel versions they're running or the filesystem of the machines (which has a big impact on processing efficiency, different fs being better or worse at different things) and they didn't even mention what version of X11 or gnome they're even running on these boxes. Are we testing Gentoo? Gentoo is portage, gentoo-sources (and the other modified kernels), ebuilds, prelink, evms, XFS, and a host of other features the others simply don't have.
Second, no comparisions are made on i/o bound tasks (reading/writing/copying files). Things that do not stretch resources in linux may simply be preempted out of importance. (Linux puts higher priority on a soon-to-be-overstuffed disk buffer than the display/computation of a spreadsheets). It would be hard for ANY of these distros to even compete on i/o bound tasks mostly because of Gentoo's EVMS or XFS options. EVMS is simply the best Software RAID I have ever used. XFS seems to be one of the filesystems of the future as well due to it's i/o guarantees, journalling, and sickly-disgustingly-large filesizes.(I feel the jobs XFS will do simply cannot be done by anything else at this point).
Thirdly, another advantage is simply not having 3-4 disks worth of iso install that you will NEVER need. Mandrake and Redhat (though not tested here) are completely bloatware. They don't install what you need and work properly, they install EVERYTHING or work poorly (because the distro makers hide some silly dependencies). Gentoo's "emerge -p packagename" is a whole hell of a lot friendlier. But, if you don't use the deep options it's possible to lose a lot of the "roll your own" advantages. Gentoo is subject to a high degree of user stupidity, it is possible to negate all of the advantages of source-based distro simply by being careless.
Lastly, Gentoo's major advantage -- it's best.. the Gentoo users! That's right. Gentoo's forums are so good (and full of know-how types) that put virtually any goofy problem you can think of is within searching distance. I simply have found Gentoo's support forums probably the best repository of linux information on the net. I don't say that lightly either. Something to be said about being able to get problems resolved quickly and correctly -- and having it at your fingertips. I like to go to one place for answers, and likely you do to.
As you can see, it's very hard to get a good feel for what Gentoo is by reading that review. I would encourage any techie freak to take her for a test drive. It's not for everyone and not even for most, but it's still a very different experience in comparison to other linux distributions. (I have used Redhat, Mandrake, and switched to Gentoo -- I have not had any need or thought of moving to something else; my own 2 cents).
-Mind
;) Gnu/Linux/Debian all the way !
In a "typical" install of Gentoo, the CFLAGS are changed significantly.
Mine are quite aggressive, and possibly redundant and maybe silly. But it is definately faster than any other distro I have ever had on here, in every single way.
Please, spare the comments about what may be redundant etc. Works For Me. BRILLIANTLY!
CFLAGS="-march=athlon-xp -O3 -pipe -fexpensive-optimizations -fomit-frame-pointer
-D__SMP__ -mmmx -msse -m3dnow -mfpmath=sse,387"
-- Note: If you don't agree with me, don't bother replying. I won't read it.
I used to spend hours fiddling around with the printer config files trying to find the best ghostscript command options, never mind trying to get X working properly. I run Mandrake on systems where folks will complain if it breaks, but on other machines I have hours of amusement tweaking Gentoo. Recently I tried to install it on a 66 MHz 486. It took 6 weeks of almost solid compiling before I could get KDE working on it! Now I'm looking for a 386 and I have a SPARC and Alpha which I am going to try.
I haven't had so much fun with Linux for years!
you measured a semirandom quantity and you only measured it once? you are supposed to measure it like 10 times and take the average
-fstrict-aliasing is a *very* balsy flag to use if you haven't actually written the software yourself. It's a pretty safe bet that building a lot of unknown software with -fstrict-aliasing will break it. There's a good reason strict aliasing is off by default -- valid C programs (easy ones to write, too) will die with this option, occasionally and in odd ways.
Getting slightly off-topic, but if you care about strict aliasing optimisations, you can use Fortran. The language is structured in such a way that the compiler knows exactly what aliasing is going on, and can optimise accordingly.
This is on a Celeron 300A with 64MB of RAM, and had to update the menu entries for 13 (!) WM's (dd wanted to try them all):
[root@aiyana root]# time urpmi nmap-frontendk .i586 //home/leonb/1/Mandrake/RPMS/nmap-3.00-2mdk.i586.r pm //home/leonb/1/Mandrake/RPMS/nmap-frontend-3.00-2m dk.i586.rpm
/. junk filter happy]
To satisfy dependencies, the following packages are going to be installed (1 MB):
nmap-3.00-2mdk.i586
nmap-frontend-3.00-2md
Is this OK? (Y/n) y
installing
Preparing... [row of # deleted to make
1:nmap [ditto]
2:nmap-frontend [ditto]
24.75user 21.40system 1:17.24elapsed 59%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (2583major+11904minor)pagefaults 0swaps
So hard, ooh, all that typing - tell you a little secret about optimisation, too: optimising to Pentium level (Mandrake's default) gets you 98% of the speed gains you'll ever get from the technique, except for a very few special maths-intensive programs. Some of the Cooker denizens spent a bit of time building distros optimised for their Athlon, P4, etc and with the exception of a handful of apps like X, glibc, the kernel itself and codecs the difference was squat (in fact, some apps ran slower).
Got time? Spend some of it coding or testing
I win. (-:
(edits urpmi into the BIOS)
I win again. (-:
Got time? Spend some of it coding or testing
I'm new to linux and like Gentoo very much. The performance test doesn't proof anything, nada, zilch. Gentoo has a nice flashy website and a great non-elitist community that is young at hart. Portage is exactly what I was looking for to keep my system up-to-date with the latest and the greatest. I don't know much about optimization, but I just don't care what the big boys say about Gentoo. Gentoo cannot be compared with Debian, Redhat or any other distro. Gentoo is simply unique.
Gentoo has the most flashy website. All the boring distros like Debian, Mandrake or Redhat can't claim that. The Gentoo forum really kicks ass. Smell you later!
I tried gentoo. I switched back to Debian within two months. None of the claimed benifits were there and it was way less user friendly, emerge would fail with cryptic messages that required investigation, and this wasn't even with 'unstable' ebuilds. - I've been running a debian box since ham, and have never had apt fail even on unstable (of course except for cases where I forced things it didn't want :)
I used to use debian, until I tried out Gentoo. I find that the real benefit of a source-based distribution is packages with optional dependencies. Gentoo can build emacs with optional Gnome support, or, if I choose, with no X support at all.
Sometimes this can be achieved in binary distributions by having multiple version of a package, but it's hard to reach the level of flexibility that Gentoo is capable of. Suppose a program has 4 optional dependencies in Gentoo, and they're independent of each other (any possible combination of them can be used). To offer the same choice with binaries, you need 16 packages.
...(from that standpoint, Slackware and similar distros blow Gentoo away).
/Commander McBragg
Commander McBragg "There _is_ nothing similar to Slackware, young man."
Heh...that should be "never see more than a 10%" not "never see less than a 10%". :-)
May we never see th
Hey, I enjoyed your post and agree with it. Most compile flags do nothing; the main things that matter are the cpu speed and disk i/o. I've said that before.
Also, I don't recomend Gentoo for most users- I am not a fanatic, I just like configuring things myself so when something messes up, there's only one person to blame (go slackware!).
What you should note is that there ARE performance gains, though slight. I use gentoo because I like editing the code then building it specifically for my system. I didn't know there were this many gentoo-haters out there, but I definitely see only good things from this distribution. No need to bash it nor me. That's getting a little childish.
What I was saying was Gentoo is definitely a distribution to try for new and intermediate users to get to know how their system works and what can be done (e.x.- what services are unneeded) to speed it up. Gentoo is a great learning distribution and very easy to keep up to date- and that is a fact (hey, all you people are talking about now is "This Gentoy can here all the facts you can throw him and not move."). Other distributions are just as good, I just don't see the point in flaming a distribution that is equivalent to the others that's easier for advanced users to edit.
This is why most serious RH users (anyone who sanely wants to use freshrpms, fedora, etc) use apt or yum. up2date is really atrocious. But while RH doesn't package apt/yum, these third party folks *do* do so, for each new RH release.
May we never see th
Also, I don't recomend Gentoo for most users- I am not a fanatic, I just like configuring things myself so when something messes up, there's only one person to blame (go slackware!).
I'm all for folks recommending things they enjoy. The only thing that upsets me is the repeated number of Gentoo users that come on Slashdot or Usenet and make claims that simply are not true about the benefits distro. I see a *ton* of Debian fans pushing their own distro, but usually it comes down to someone claiming an ideological difference or liking the distro's packaging policy -- you don't see a bunch of claims that Debian is much faster or more stable than other distros. It hurts all Linux folks to have a lot of false information floating around, and it really doesn't do Gentoo any more good than it does to have Linux folks making outrageous claims about Linux's capabilities.
What you should note is that there ARE performance gains, though slight.
[shrug] That's probably true. -fomit-frame-pointer, at the least is pretty sure not to hurt you aside from the inability to debug.
I didn't know there were this many gentoo-haters out there, but I definitely see only good things from this distribution. No need to bash it nor me. That's getting a little childish.
I don't think I was bashing Gentoo -- I specifically said that it was a "worthy distro". I may have been slightly harsh towards you, simply because of my frusteration with the behavior of a large number of Gentoo users on various forums, but I don't think it was particularly out of line, and I pointed out that I've been in the same boat WRT compile flags.
What I was saying was Gentoo is definitely a distribution to try for new and intermediate users to get to know how their system works and what can be done (e.x.- what services are unneeded) to speed it up.
[shrug] I'm not saying it's *bad* for them, though every distribution I know of (well, I don't know precisely how Debian deals with source, so perhaps not Debian) provides a pretty good learning system. On rpm based systems, you can just create ~/.rpmrc, modify buildarchtranslate, fill in an OPTFLAGS field, and then use rpm --rebuild on a SRPM to do the same rebuilds that you'd do on Gentoo.
My other real irritation is the number of (a long time ago, mostly Slackware, now mostly Gentoo) users that run around telling would-be Linux gurus that any advanced users *clearly* use a system in which they build their own packages. This tends to put these people in a position of feeling that they need to use a particular distro to prove their tech balls. It's not a particularly friendly environment for any new users. (They ignore, of course, the fact that Linus uses KDE on SuSE, and Alan Cox GNOME on Red Hat -- and both of them seem comfortable).
Does that make Gentoo bad at all? No. Of course not. I'd just like to keep the twin nastinesses of "Bob sucks, because he only uses distro X" and "Distro Y beats the shit out of other distros when it comes to performance/stability/other inflated claim" to a minimum.
May we never see th
Wow, I agree completely with all of that! And Gentoo users are quite active in spreading the word about how neat and customizeable Gentoo is. I agree, it is getting kinda out of hand. As for "not recommending Gentoo to most users," most people around here don't use Linux, and I start them out on Mandrake. To tell you the truth, I'm happy with any up to date distro and some light wm so I can get my programs and debugging done. Gentoo's customizeable and I can set it to do whatever I want, which is why I've recently started using (was redhat $ mandrake user). It's easier for me. Thanks for you comments- I find them truthfull and informative!
The first lesson of this test is that minor version numbers can apparently make a large difference. If you're using Gnumeric 1.0.13 with large sheets and waiting a while for them to open, it's probably worth investigating version 1.0.12.
Ooops. Two different versions on different distros. Let's fix it. Oh, still difference. Maybe it's because different GNOME-libs versions on different distros? OK, let's fix it. Oops. Different GTK is used. Oops. Is same version of glibc really matters? What is that glibc anyway... Oops, first distro was tested with KDE running, maybe we should switch to IceWM there too? Ooops, do you think running Apache may slowdown gnumeric?
Seriously, this is just nonsense. If you want to compare something, first you need to understand how it works.
Now, that's not the reason I run Gentoo. The single reason I use it is Portage. It's just as easy to use as apt-get in Debian with 2 advantages.
First, there's USE-flags. You get to choose what you want. I don't want MySQL or KDE support in any packages, so I don't have them. If something supports PostgreSQL, that's compiled in instead.
Second, it's somewhat more up-to-date with newer versions that Debian. For servers I'd still use Debian, but on my desktop I like to stay current. Not bleeding edge, but current. Also there's less trouble with Debians policies about Licenses.
The package management is the best I've seen so far, so that's why I run Gentoo. My previous distro was LFS, but Gentoo gives me all the customization I want, with package management.
Software should be free as in speech, but if we also get some free beer, all the better.
i use a hand-modified slackware 9 system. i would like a totally hand-rolled system but that seems to be out of my abilities / ambitions at this time. i prefer to install programs from scratch because i prefer to have the source code so i can see how things are done (i mainly use my box for programming).
however, convenience is nice. i am debating whether to switch back to debian (i flip about every 6-12 months between slack & debian) when i go to university in a couple months so i can take advantage of fun tricks with apt.
well, whatever floats your boat.
The P4 based celerons have 128K of l2 cache just like the original celeron 300a. Only the FCPGA2 ( last of the P-III) based celerons had 256K of cache.
Optimizing for the northwood P4 which has 512K of L2 cache and then running the resulting code on a 128K L2 celeron does impact performance a lot.
Kindness is the language which the deaf can hear and the blind can see. - Mark Twain
Even with the compiling, it takes less time to install some stuff (eg nmap) than it would take to locate the relevant .rpm.
Not with something like Debian's apt-get (fine, it's not RPM), yum, or Red Hat's up2date.
I've found that optimizing with -Os improves the performance of Mozilla by an order of magnitude on my Celeron (P2 core). Of course, I have to edit the ebuild because the morons strip all settings and supply a default of -O2. Drives me nuts.
Apparently someone isn't aware of how much CPU time using his IDE drives is eating....
1. I can make things work in it. (sane with my old scanner just doesn't work with mandrake, but Gentoo works just fine. I only had to follow directions).
2. Portage, makes installing software a snap.
3. I can play with the optimizations. It feels faster to me.
4. I'm usually using the latest software (2.6-testing2 kernel to write this).