Announcement

Collapse
No announcement yet.

Benchmarks Of The Gentoo-Based Calculate Linux

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    Originally posted by pingufunkybeat View Post
    What's the point of what? Flexibility?

    I can install Compiz without installing all of GNOME. You can't. I can install MPlayer with multithreading, but without PulseAudio support. I can install OpenOffice without Java, but with a Qt4 frontend. I can actually choose whether I want to use GStreamer or xinelib as a backend with most players. You simply turn on options you want, and turn off those you don't want. Most packages have a wide range of possible functionality, and with most distributions, you do not get to choose it, it is chosen for you because of the limitations of the binary package formats. Gentoo lets you have Linux the way YOU like it, not the way Shuttleworth likes it.

    That's worth something.

    Obviously, not all users want this, and this is the reason why there are different distributions.
    FWIW, there is precedent for multiple packages with different configurations in Ubuntu. For example, Quassel, a Qt4-based IRC client, can optionally integrate deeply with the KDE 4.x libraries. Or it can be compiled by only depending on Qt4 and other low-level libraries, without touching KDE. Additionally, Quassel can be compiled either as a client only, as a server only, or as both the client and server in a single binary.

    In Ubuntu, almost all of these possibilities are covered by packages in the distro itself (not a PPA). The `quassel' package is the fully KDE-integrated client+server build. The `quassel-client' package is the KDE-integrated client-only build. `quassel-qt4' is the non-KDE client+server build. `quassel-client-qt4' is the non-KDE client-only build. And `quassel-core' does not build a GUI at all, only the server, so it only depends on Qt4.

    So as you can see, it is possible for a package with many possible configurations at build-time to be released as different packages. Also see apache2, which offers different configurations for the multi-processing module (MPM).

    Granted, there are no packages for building GNOME without printing support, or building GLib without threading support. And I currently am not aware of any binary packages that differ only in their CFLAGS; in the case of both Quassel and Apache2, the differences are special custom build-time flags that fundamentally influence the dependencies or behavior of the package. In other words, something many users will actually care about.

    I used Gentoo for a few years when I was new to Linux, and I have indeed build a system from stage 0. But more recently, I have used Fedora, Ubuntu, or derivatives thereof on my desktops, laptops, and server. Why? Because it just doesn't matter anymore.

    I currently do not own a system with less than 2GB of RAM. I have a laptop with 2GB of RAM and a Core 2 Duo; a laptop with 4GB of RAM and a faster Core 2 Duo; a desktop with 6GB of RAM and a Core i7; and a server with 12GB of RAM and a faster Core i7. On any of these systems, if libraries providing features I will never use are mapped into memory, or if kernel modules are loaded that I lack the hardware for, I frankly don't care. These systems have so much free memory under normal usage that basically the entire set of open files sits in RAM the entire time, sometimes for days. This is less true of the 2GB system, but for the rest, it's definitely true. My disks spend the vast majority of their time idle, even when significant I/O (like watching a video) is going on.

    I cared about Gentoo when I had a system with 256 MB of RAM, but nowadays it just doesn't matter. Go ahead Ubuntu; load Qt4, GLib, GTK+3.0, PostgreSQL, MySQL, sqlite, libgnomeprintui, Mono, Python, Java, Perl, and libvala into my system. Ask my RAM if it cares.

    And if you own a system with less than 2GB of RAM, it's time to toss it. Seriously. It's 2010. Donate it to your local university's computer engineering department so upcoming hardware engineers can dissect its Pentium 4 and see how the early superscalar processors of the 2000s worked.

    Comment


    • #17
      I can appreciate what you're saying (I have a new system arriving tomorrow) but at the same time, I am posting this message on a clunky old laptop with 512MB RAM that I still use on a regular basis.

      Comment


      • #18
        Originally posted by allquixotic View Post
        I cared about Gentoo when I had a system with 256 MB of RAM, but nowadays it just doesn't matter. Go ahead Ubuntu; load Qt4, GLib, GTK+3.0, PostgreSQL, MySQL, sqlite, libgnomeprintui, Mono, Python, Java, Perl, and libvala into my system. Ask my RAM if it cares.
        Using Gentoo today is even more fun than it was before. While you had to wait hours for compiling Qt, for example, you now get the flexibility of Gentoo *without* having to wait ages.

        It doesn't matter for you - and that's perfect for you. However, the topic is about performance comparisons, so I eagerly expect some numbers.

        Comment


        • #19
          FWIW, there is precedent for multiple packages with different configurations in Ubuntu. For example, Quassel, a Qt4-based IRC client, can optionally integrate deeply with the KDE 4.x libraries. Or it can be compiled by only depending on Qt4 and other low-level libraries, without touching KDE. Additionally, Quassel can be compiled either as a client only, as a server only, or as both the client and server in a single binary.
          Like I said, I don't care about RAM, or extreme optimizations. What I care is that it is flexible and easy to maintain (for an experienced user, "easy" is always subjective). And what you describe does not sound easier than setting an environment variable to something like "+qt4 -gtk -gnome +kde -pulseaudio" and forgetting about it.

          Like I've said before, the main advantages of Gentoo are:

          - Flexibility
          - Timely access to new and experimental software
          - Knowledgeable and helpful community and docs

          This doesn't mean that other distros are bad (nobody sane would call Fedora, Debian or OpenSUSE bad distros), it just means that Gentoo might fit some people better. You can get some flexibility by providing 6 different packages for each program and having the user sift through them, but I still prefer setting it up and having the system take care of it.

          Mind you, Gentoo can be annoying too. The recent migration to libpng 1.4 was particularly painful. But at the end of the day, I still prefer it to any other distro I've used. The idea of some daemon getting installed without me noticing, and then messing up my sound is enough to keep me there.

          Comment


          • #20
            That's another thing, quad core REALLY helps. I'm getting my first i7 tomorrow, I can't wait to see how quick those compiles are.

            Comment


            • #21
              Gentoo on the Pentium4 laptop was a bit of a pain.

              Gentoo on Phenom II Quad is heaven

              Comment


              • #22
                Originally posted by paravoid View Post
                Using Gentoo today is even more fun than it was before. While you had to wait hours for compiling Qt, for example, you now get the flexibility of Gentoo *without* having to wait ages.
                You know? There is actually some merit to this. I have found that, as time goes on, the complexity of software design grows slower than the Moore's Law progression of hardware. What this suggests is that compile times are decreasing. I have read horror stories of how it takes a full day to compile a complete Gentoo system. On a Core i7 @ 3.33 GHz with a sufficiently fast HDD, I imagine it would be possible to build the kernel, glibc, gcc, and most everything you need to get to a basic X desktop in only a couple (3-4) hours. I haven't tried it lately, but I definitely remember it taking an overnight compile to build Xorg on my old 512MB laptop.

                Now, think about 2015, or 2020. If hardware continues to improve and software design doesn't introduce something new that absolutely kills build time, it might be possible to build a complete system in an hour or less. Or, given the massively parallel processors that are slated to become commodities this decade, the limiting factor of a compile may become the storage backend, not the CPU.

                So if you have a hypothetical 2015-model SATA 3 SSD at 6 Gbps, and it can nearly max out the SATA pipeline, and a 16 core CPU with hyperthreading, it may be possible to build your entire system from source code in the same time it takes to install the binary packages of Ubuntu today -- about 15 to 60 minutes. At this speed, you probably don't want to have the build printing to a console, because the terminal will actually slow down the compile as it waits for the graphics driver to render the text. With your nice 24GB RAM system, though, you can probably just offload the compile log into a RAM buffer, making it available to the user if it fails.

                Of course, under these conditions, it would be even faster to install the binary packages -- but is it really necessary to knock installation times down into the 90 second range? I think most users would be perfectly fine with a 45 minute install time.

                What Gentoo needs to focus on, if it wants to remain relevant, is ease of use. It needs a nice graphical installation wizard that asks the user questions, and based on those questions, makes the appropriate optimizations. This might help extend the time that the project remains significant, because it will bring Gentoo in line with Ubuntu as far as eschewing arcane console commands. Coupled with a solid desktop experience with GNOME or KDE, it could be made very nice indeed.

                For example, one of the first questions could be, do you intend to run this installation on this computer only, or potentially on other systems? For a static desktop install, you answer the former; for an OS on a thumb drive, you answer the latter (you might take it to your mom's house where she doesn't have a processor supporting XYZ feature that gcc has compiled everything with). Then it can ask you, for example: Do you have a printer? Yes / No / Might at some point. Currently, most distros assume "Might at some point" or "Yes", but with this choice, you still have the option to answer "No" and completely strip out anything print-related (CUPS, gnome printing facilities, etc). Then it can ask you what sort of graphics drivers you want, which filesystem (and explain in one sentence the difference between them), etc.

                Such a configuration wizard would be too detailed for your typical Windows user, who just wants things to work; for them, Ubuntu (which doesn't ask questions) or Windows / Mac (which really doesn't ask questions) would be best. But the wizard would lower the barrier of entry, while still providing the space and RAM savings that you value so highly.

                The unfortunate part is that, by the time we have systems that can compile Gentoo that quickly, the space savings, performance, and RAM savings will be so utterly insignificant that you may as well ignore them. It will be as insignificant as Calculate performing some 200-second test 0.01 seconds faster than Ubuntu.

                If you were to construct a graph of history, starting at the foundation of the Gentoo project and extending to 2020, you would be able to show full system compile time steadily decreasing, while the relative performance benefit of that compile time would also be steadily decreasing. Therefore, I am still not convinced that Gentoo (or generally speaking, source-based distros) will remain relevant asymptotically, even if it becomes easy enough for a graphically-oriented power user to install. Even if we assume that compilation time of the entire system is negligible -- as in, less than a second -- it still takes the user more time to install the system because they have to make all those choices. In the far-flung future, 99% of choices have zero impact on the performance of the system, because the resources available are so robust. The 1% of choices that have a measurable performance impact (modern example: compositing or not) are configured at runtime, both for source distros and binary ones.

                Comment


                • #23
                  What Gentoo needs to focus on, if it wants to remain relevant, is ease of use. It needs a nice graphical installation wizard that asks the user questions, and based on those questions, makes the appropriate optimizations. This might help extend the time that the project remains significant, because it will bring Gentoo in line with Ubuntu as far as eschewing arcane console commands. Coupled with a solid desktop experience with GNOME or KDE, it could be made very nice indeed.
                  I strongly disagree with this.

                  You can't be all things to all people. Gentoo and Ubuntu fill very different niche markets. Gentoo is close to Debian and Slackware, Ubuntu is close to Mandriva or former distros such as Corel Linux.

                  Gentoo, by design, cannot become as noob friendly as Ubuntu. It would lose transparency and still wouldn't match Ubuntu's easiness. Gentoo is designed for power-users, and that's why power-users like it. If it became more like Ubuntu, it would lose its entire userbase.

                  Comment


                  • #24
                    Compiling can only get so fast up to a point. A fast cpu with many cores may not help much if the cores will be idle waiting for something else to finish. Also don't forget about using a ram-based working space for portage - that can really speed up compilations if you've got the ram to use.
                    As for the article, well I'm with the "pointless to benchmark gentoo" crowd, but maybe it'll keep some people happy for a while.

                    Comment


                    • #25
                      Originally posted by pingufunkybeat View Post
                      I strongly disagree with this.

                      You can't be all things to all people. Gentoo and Ubuntu fill very different niche markets. Gentoo is close to Debian and Slackware, Ubuntu is close to Mandriva or former distros such as Corel Linux.

                      Gentoo, by design, cannot become as noob friendly as Ubuntu. It would lose transparency and still wouldn't match Ubuntu's easiness. Gentoo is designed for power-users, and that's why power-users like it. If it became more like Ubuntu, it would lose its entire userbase.
                      And I strongly agree with pingufunkybeat here!

                      Comment


                      • #26
                        We are totally in line :-)

                        Comment


                        • #27
                          Interesting test.

                          Thanks!

                          However, a small note:

                          "With our first non-graphics test, on the Intel Atom netbook the fastest 32-bit distribution for the 7-Zip test was Calculate Linux Desktop, but the difference between it and the three other Linux desktops were statistically insignificant."
                          How did you know the differences were "statistically insignificant"? Did you run each test several times, to actually test if there were any statistical differences between the distros? If not, one at least conclude that the differences between them were marginally small in that particular test.

                          Comment


                          • #28
                            I also agree. They did do a graphical install once but I was never interested and I doubt many people actually used it in the end. There are easier variants like Sabayon (and Calculate, it seems) but best leave Gentoo be Gentoo.

                            In other news, I met the Gentoo penguins at Edinburgh Zoo the other week.

                            Comment


                            • #29
                              Originally posted by pingufunkybeat View Post
                              If it became more like Ubuntu, it would lose its entire userbase.
                              Which wouldn't be a bad thing, really.

                              Naw, I kid. I realize that, increasingly, the stuff at funroll-loops.info is accurate to the T. No, Gentoo doesn't provide performance improvements (and will provide relatively fewer as systems become more robust); no, Gentoo doesn't save you time (and will always take significantly more time to configure and install than binary distros); no, Gentoo isn't easier (you still have to mess with your CFLAGS and USE flags, which is only "easy" for someone who is extremely habituated to doing so already). The only inalienable feature of source-based distros over binary distros is the ability to fiddle with things. It's for people who have to be able to fiddle with their system. Which is fine.

                              Users of source-based distros are not alone in their desire to fiddle. I'm a software developer; even though I predominantly use binary distros, I often build stuff from source because I want to. Often, I will check an upstream website, notice that some new version is out with awesome new features or fixes, notice that I can't obtain a binary package of that in my distro without upgrading the entire system to the unstable development channel, then download the source and get to compiling.

                              When I do that, though, I frankly would rather type `./configure --prefix=/usr --libdir=/usr/lib64 --sysconfdir=/etc --localstate=/var --enable-vala' than `emerge rhythmbox'. I like to see upstream's build system at work, and I like to hand-tweak it. A source package manager would frankly get in my way, especially if I maintain my own patches to the source (which I do, in a few cases). If a new version of a package entices me to upgrade to the new version, I care about that package enough that I want to build it by hand, and read the entire ./configure --help to make sure I'm not missing something I want.

                              Thing of it is, though, I can count on two hands the number of packages that entice me in that way. To name a few, my favorites are Rhythmbox, Quassel, the Linux kernel, Netbeans, gstreamer, mpd, firefox, OpenAL-soft, and the graphics driver my current hardware depends on. I am experienced enough with the build systems of all of these that it's really not much effort for me to keep up with releases of these, and just tell my package manager not to upgrade the version in the package manager (e.g. aptitude hold). For everything else, I don't mind using "stable", possibly-bloated binaries shipped with the distro.

                              I'm taking a stab in the dark here, but maybe the difference between the "me-type" and the "Gentoo-type" is that the Gentoo type likes to fiddle with everything, while I only want to fiddle with the things I care about (and the things that I don't care about had better stay out of my way, lest I replace them with a very tiny shell script). I can understand where Gentoo users are coming from, but I'm not really Gentoo material.

                              Comment


                              • #30
                                Some people believe that Gentoo's strongest point lays it's speed. That was a case few years ago, not now. Other flagship distros have plenty of great developers, who know what they're doing.

                                Gentoo is all about customization and flexibility which you can't find in any other distro. As paravoid mentioned - Gentoo is not general purpose distribution for everyone. Gentoo is extremely rewarding, but requires a lot of time and maintenance. If you want superb out of the box experience, Ubuntu, Fedora are much better choices.

                                Michel - thank you for this benchmark. As you mentioned in your article, benchmarking Gentoo doesn't make sense, as there is no "out of the box" Gentoo. You've spent considerable amount of time to satisfy the crowd, but I'm not sure if that won't start flame war
                                Rob
                                email: dagger@gentoo.org

                                Comment

                                Working...
                                X