Slashdot Mirror


FreeBSD 8.0 vs. Ubuntu 9.10 Benchmarks

An anonymous reader writes "Phoronix has brought benchmarks comparing the FreeBSD 8.0-RC and Ubuntu 9.10 Alpha 6 operating systems. FreeBSD rather ends up taking a wallop to Ubuntu Linux, but there are a few areas where FreeBSD 8 ran well. They also posted benchmarks comparing this near-final FreeBSD 8.0 build to that of FreeBSD 7.2 to show performance improvements there but with a few regressions."

27 of 268 comments (clear)

  1. Let's see these against my Gentoo... by Jurily · · Score: 5, Funny

    ...once I'm done compiling.

    1. Re:Let's see these against my Gentoo... by wall0159 · · Score: 4, Funny

      Given that, I think it'd be fairer to compare Gentoo against Ubuntu 10.04, don't you?

  2. What's the point. by hedwards · · Score: 4, Insightful

    I'm sort of curious what the point is of comparing an alpha to a release candidate. Additionally it's a minor update versus a major update. Throwing in an older release makes it all the more pointless as I'm not seeing anywhere in the summary that they disabled debugging.

    1. Re:What's the point. by bostei2008 · · Score: 5, Insightful

      Just a plug for the Phoronix Test Suite?

    2. Re:What's the point. by Jurily · · Score: 3, Interesting

      I'm sort of curious what the point is of comparing an alpha to a release candidate. Additionally it's a minor update versus a major update. Throwing in an older release makes it all the more pointless as I'm not seeing anywhere in the summary that they disabled debugging.

      They left out almost all distros, too.

    3. Re:What's the point. by hedwards · · Score: 5, Interesting

      Well, with the number of distros out there, it's inevitable that they'd leave out most of them. But I must admit that leaving out every other distro makes it kind of hard to know if Ubuntu is doing better than the pack or about the same.

      It's kind of suspect, in my opinion, that the older release was doing so much better than the newer one, considering all the time that's been spent in recent times on optimizing various portions of the source. It's also worth noting that probably a much larger portion of the FreeBSD user base will recompile their kernel pretty much immediately with basic optimizations and removing the cruft that they don't need or want.

    4. Re:What's the point. by geminidomino · · Score: 4, Informative

      Is there any actual benefit to be gained from removing "cruft", other than saving a smidgen of memory?

      Long, but not long enough answer:

      Performance: Unless the cruft is a bunch of data or NOPs, it will be executed at some point, which is pointless (or it wouldn't be cruft.) And whether it's data or instruction, if "good" data is swapped out of the cache in favor of the cruft, then it will have to be read back in (cache misses).

      Security: Bugs love to hide in cruft.

      tl;dr version: Yes.

    5. Re:What's the point. by kad77 · · Score: 4, Interesting

      I'm sort of curious why the slashdot story summary is so annoyingly biased in it's phrasing - "FreeBSD rather ends up taking a wallop to Ubuntu Linux, but there are a few areas where FreeBSD 8 ran well", when the arguably flawed test suite shows NO SUCH THING!

      The FreeBSD system has very comparable or better benchmarks on nearly every metric in the test, just click through TFA and see for yourself.

      Tripe.

      Besides the needless and counterproductive bias, the phrase X "rather ends up taking a wallop to" Y is clunky and sophomoric. Editors, get a life.

    6. Re:What's the point. by WinterSolstice · · Score: 4, Insightful

      I must say that I'm really fed up with these sorts of benchmarks. They insult the intelligence of IT/technical people AND business people/endusers.

      I need to find or create a site that actually benchmarks a variety of systems (windows/linux/unix/bsd) for ACTUAL scenarios that the users of the systems expect them to perform. Not sure how important LAME encoding is for BSD people - I know I don't use it for that. Not sure how many Ubuntu users run DB servers or firewall routers.

      Can anyone point me to someplace like this? Someplace where I can see, for example, DB driven dynamic pages served per second - concurrent DB users, scalability to 4+ processors, etc?

      I want metrics like SAN performance, DB performance, mail server performance, HA, clustering, firewall performance etc for server "distros" (Windows Server, AIX, Solaris, BSD, Linux, OSX Server)
      I want metrics like graphics benchmarks, app response time, those classic GUI task tests for desktop "distros" (Windows, OSX, Linux, BSD).

      It annoys me that I see benchmarks that are so narrow and pointless. I can't make reasonable non-fanboy type comparisons when the benchmark doesn't include anything that matters to me.

      --
      An operating system should be like a light switch... simple, effective, easy to use, and designed for everyone.
  3. Summary by __aaxwdb6741 · · Score: 5, Insightful

    The article is of little use other than tell the general populace of Slashdot that FreeBSD 8.0 and Ubuntu 9.10 are right around the corner, and that we should be hyped. Also FreeBSD 8 is a little faster than FreeBSD 7.2 but a lot slower than Ubuntu Linux 9.10

    I'm not surprised, however I do belong to the group that does not really care about relative performance to other OS's as performance is only one of the aspects from the vector of decisions we had to make to finally choose FreeBSD for mass-scale deployment.

    1. Re:Summary by mi · · Score: 3, Insightful

      Also FreeBSD 8 is a little faster than FreeBSD 7.2 but a lot slower than Ubuntu Linux 9.10

      Not disputing the conclusions of the memory, I/O benchmakrs, part of what they benchmarked is the compiler — FreeBSD's gcc-4.2.1 vs. Ubuntu's 4.4.1. I'm not surprised, GCC's newer release both compiles faster and produces faster binaries.

      You could say, FreeBSD is at fault (and thus deserves bad rep) for including an outdated compiler, but, on the other hand, FreeBSD's choice may prove wiser, when bugs in the hot new compiler surface... The compiler's history — as, really, that of any sufficiently complex piece of software — teaches, it is wise to stay several releases behind. Bugs in the older releases are known and all platforms — certainly including FreeBSD — merge fixes into their repositories.

      Their choice of using ImageMagick as a test is particularly suspect — that software has so many options (which graphics back-ends to include, whether to use OpenMP, etc.) and varies so greatly between its own frequent minor releases, that I'm sure they built it with subtle (but timing-affecting) differences between platforms... For just one example, FreeBSD's port of ImageMagick runs all of their bundled self-tests after compilation by default, which takes quite a while. Unfortunately, the testers don't even mention, how exactly they built the stuff. If they used the port on FreeBSD, did they change any options? If they did not use the port, then they didn't build ImageMagick the way the users will be building it... And if they did use the port and flipped some features, did they ensure an identical match between two FreeBSD versions and Ubuntu?

      --
      In Soviet Washington the swamp drains you.
    2. Re:Summary by TheRaven64 · · Score: 3, Informative

      FreeBSD ships with GCC 4.2.1 as the system compiler because it was the last release to be GPLv2 and GPLv3 stuff is not allowed in the base system. GCC 4.4 is in ports, and you can use this to compile ports easily by just setting a flag in make.conf if you care. FreeBSD 9 will hopefully be using LLVM/Clang as the system compiler, which should give it a nice boost.

      Phoronix has a history of doing long and misleading benchmarks between Linux and *BSD/Solaris, where they manage to include so many extraneous factors that the results are meaningless.

      --
      I am TheRaven on Soylent News
  4. Benchmarks... by coryking · · Score: 3, Insightful

    Benchmarks are useless. There are way more important things to judge an operating system then "speed".

    Does Ubuntu have nearly as good of documentation? No. It has that "info" nonsense.

    Does Ubuntu provide a stable platform to build a server? No. It, like most linux distros, changes whole versions during updates. That isn't stable.

    Does Ubuntu provide a way to strip itself down to the bare metal? Ain't as easy as the BSD's.

    Is Ubuntu built around solid engineering and design, or politics? Depends--Ubuntu seems to be less afraid of the big bad FSF as other distros, but it still is steeped in an OS built for politics. FreeBSD is pretty tame and tends to focus on solid engineering rather than political maneuvering.

    But really, Comparing FreeBSD to Ubuntu is like comparing OpenSolaris to Windows 7. FreeBSD is largely a server operating system were as Ubuntu is an end user operating system. And if you are comparing server operating systems, there are far more important criteria than "speed". Things like version stability are vastly more important.

    1. Re:Benchmarks... by nxtw · · Score: 4, Informative

      Does Ubuntu provide a stable platform to build a server? No. It, like most linux distros, changes whole versions during updates. That isn't stable.

      Ubuntu has LTS (long-term support) releases which are supported for 5 years on the server side. The last was 8.04 and the next will be 10.04.

      I prefer RHEL/CentOS, however. I wonder how many people use Ubuntu LTS instead of using RHEL or SLES instead.

      Does Ubuntu provide a way to strip itself down to the bare metal? Ain't as easy as the BSD's.

      How often is this important? I can think only of a few situations, such as when fitting a system into a small/cheap flash.

      But really, Comparing FreeBSD to Ubuntu is like comparing OpenSolaris to Windows 7. FreeBSD is largely a server operating system were as Ubuntu is an end user operating system. And if you are comparing server operating systems, there are far more important criteria than "speed". Things like version stability are vastly more important.

      Ubuntu has a separate 'server' version (which really just includes a different set of packages and a different kernel build.)

  5. Ubuntu *is* Linux for a lot of people by elrous0 · · Score: 5, Interesting

    When my friends ask me about Linux, I usually steer them toward Ubuntu first, as it's the most user friendly and well-supported distro out there. Canonical really puts a lot of development work into it, and it shows (in this result and many others). In the past, I usually avoided the Linux topic altogether, as there were so many confusing distros that even trying to explain the concept of Linux to non-geeks (and even many geeks) was a huge pain in the ass. So, I for one welcome our new Ubuntu overlords.

    --
    SJW: Someone who has run out of real oppression, and has to fake it.
  6. For those that want to skim TFA for the bad result by MikeRT · · Score: 3, Interesting

    The areas where FreeBSD gets its ass kicked by Ubuntu start on page 7...

    It seems to me like FreeBSD's real problem is incredibly bad I/O compared to Linux. The majority of the CPU-heavy tests were nearly neck-in-neck.

  7. Truly crap-tastic charts by vrmlguy · · Score: 5, Insightful

    Eight pages of bar charts, each gray-on-gray. On half of them, shorter bars mean better performance, on the other half, longer is better; the only way to know which is which is in a legend, written in a small font.

    Here's a suggestion: color-code the bars! Green is good, red is bad, yellow is in the middle of the road. For bonus points, choose the saturation based on magnitude of the differences. If the numbers are close, go with grayer bars, if the differences are dramatic, use dramatic colors.

    Finally, how about a line chart at the end showing all of the numbers in one place? Yeah, you'd need to convert everything to be consistent if longer or shorter is better, but that's a good idea anyway.

    --
    Nothing for 6-digit uids?
  8. BSD did rather well by John+Jamieson · · Score: 3, Interesting

    I'm not a BSD user, but I don't see BSD taking a real kicking in these benchmarks. In the majority of the benchmarks, the average user could not discern a speed difference.

  9. Re:Safe to assume? by Ian+Alexander · · Score: 4, Funny

    Yes, because the masses of casual users struggling under the crushing weight of FreeBSD that was preinstalled on their PC will naturally flock to Ubuntu...

  10. Re:For those that want to skim TFA for the bad res by Galactic+Dominator · · Score: 3, Interesting

    That's to be expected considering the defaults of ext4 vs ufs2. You can increase flush time on ufs2 and expect a similar increase. Revert to ext3 and it would be a completely different outcome. Interesting to see all the chest pounding on choice for default settings in a desktop enviro vs a traditionally server one. Would have been a been comparsion to use the upcoming PCBSD's release vs Ubuntu's, but we've seen the bias from Phoronix before.

    --
    brandelf -t FreeBSD /brain
  11. FreeBSD is still in debugging mode by Just+Some+Guy · · Score: 5, Informative

    From the update notes in /usr/src/UPDATING:

    NOTE TO PEOPLE WHO THINK THAT FreeBSD 8.x IS SLOW:
    FreeBSD 8.x has many debugging features turned on, in both the kernel and userland. These features attempt to detect incorrect use of system primitives, and encourage loud failure through extra sanity checking and fail stop semantics. They also substantially impact system performance. If you want to do performance measurement, benchmarking, and optimization, you'll want to turn them off. This includes various WITNESS- related kernel options, INVARIANTS, malloc debugging flags in userland, and various verbose features in the kernel. Many developers choose to disable these features on build machines to maximize performance. (To disable malloc debugging, run ln -s aj /etc/malloc.conf.)

    Since the article didn't mention anything about disabling all the debugging options, I'll consider this an invalid benchmark until shown otherwise.

    --
    Dewey, what part of this looks like authorities should be involved?
  12. Phoronix? Moronix more like. by LizardKing · · Score: 4, Informative

    Yet again a benchmark against a pre-release version of FreeBSD where the testers didn't even bother reading the documentation. Anyone actually familiar with the FreeBSD development and release process would know that a release candidate has a considerable amount of debugging options turned on. This is to help diagnose any problems as the last issues are shaken out of a release, but has an adverse impact on performance.

    1. Re:Phoronix? Moronix more like. by Conley+Index · · Score: 3, Informative

      Anyone actually familiar with the FreeBSD development and release process would know that a release candidate has a considerable amount of debugging options turned on.

      On Sep-10, most debugging was disabled: http://lists.freebsd.org/pipermail/svn-src-all/2009-September/013399.html

      On Sep-17, there was the last commit before 8.0-RC1: http://lists.freebsd.org/pipermail/svn-src-all/2009-September/013645.html

      Anyone familiar with the FreeBSD development and release process would know that there are no fixed rules rules when certain stuff happens and there are no sweeping changes like turning off debugging between a late RC and the actual release. (Other debugging stuff like kernel and module symbols are kept for the release.)

  13. terrible review methods by buddyglass · · Score: 3, Informative

    I stopped reading when I realized they didn't even use the same version of GCC in their compilation comparison.

  14. Re:Sigh... by jedidiah · · Score: 3, Insightful

    You can only do an equally good job with MacOS.

    For this grant priveledge you get a meagre selection of hardware that will
    either gouge you or leave you wanting. You also get an alien environment
    with a number of annoying quirks and inferior package management to any
    Unix. Package managment is a "Unix thing" and not just a Linux thing. This
    is one area where MacOS demonstrates it's not really Unix.

    Some of the proprietary tools you get with MacOS might be moderately more
    useful but they will have quirks of their own, suffer from NIH syndrome
    and may also suffer from addressing problems in a superficial manner.

    BSD is at least a proper Unix.

    --
    A Pirate and a Puritan look the same on a balance sheet.
  15. Compiling in FreeBSD by phorm · · Score: 5, Interesting

    Actually, you'll probably do quite a bit of compiling in FreeBSD too. While you can pull binary packages, most people I know prefer to use a package manager like portsnap and compile source packages.

    If you have a script to take care of compiling the common stuff, then just "make config" everything that need user input and let it fly. Granted, most servers I've used BSD on have been dual or quad core Xeon/AMD PC's with a fair bit of RAM, so it is overall a fairly quick process, though it was still not too bad on a few P4-era celerons.

    The nice thing about FreeBSD source-compiled apps that I truly did love compared to BSD is the little tweaks you could do to avoid tons of crap dependencies. Debian used to be fairly "clean" as far as deps, but both Ubuntu and Deb are now getting quite ugly in that you get rather unwanted stuff in order to get the package you want. In most FreeBSD stuff, for example, I can check the "No X Server" box and happily compile my apps without any X support whatsoever. On Debian/Ubuntu I end up trying to install some CLI system monitoring tool or CUPS, whatever, and end up with a whackload of x.org stuff because it's tied to some font which is loosely tied to the actual package I'm trying to install. On Ubuntu desktops, trying to exorcize the demons of "Evolution" without having it remove other important stuff due to deps is near impossible. Sometimes there's a separate branch for a "cleaner" install, but often enough not.

    Of course, BSD ain't perfect. Linux tends to have a lot of "new" stuff that BSD is a little more "conservative" in bringing into the mainline (iSCSI support for example was a fairly recent addition compared to 'nix), but overall the package system is powerful indeed.

    Having not used Gentoo (yet) but knowing others who have, it seems like it might be somewhat similar in concept. The issues I've heard with are mostly in people getting to the up-and-running stage, but - similar to BSD - avoid annoying little conflicts or unwanted cruft is a lot easier than Debian/Ubuntu's precompiled binaries. Of course, I've also heard of much frustration in both if you have find halfway through a *long* compile that you missed something you should have flagged/included.

  16. Debugging/self-check in the FreeBSD kernel by cracauer · · Score: 3, Insightful

    People mentioned the self-checks and debugging features that used to be turned on in FreeBSD development branches and beta releases.

    Self-checks, which are the major source of kernel slowdowns in those kernel options, are not turned on in the 8.0 release candidates.

    Debugging is on, but unless you are very short of memory it should not cause a noticeable slowdown.

    FreeBSD's slowness in these benchmarks can be attributed to two factors:

    1) the compiler. The GPL v3 is unacceptable for FreeBSD, so newest GCCs cannot be used as the base compiler. Users can choose to install a new gcc on their own (as a port) and then even go and compile all ports and even the base system with that new compiler (some parts might not have been cleaned up to comply with new language strictness that might have come with new gccs).

    2) threading, as in the userland threading library support. It is very hard to tell whether there is some performance problem in FreeBSD's thread libraries or whether applications just happen to have been optimized and tested only with Linux.

    That happens a lot and you can also see Solaris with it's M:N threading fail miserably for some threading benchmarks that do dump things, such as just creating and destroying threads at a high rate.

    %%

    The problem of "thread benchmarks" benchmarking bogus things and/or just having been written with Linux' thread model in mind has been going on for 12 something years now. Benchmarking thread systems in a realistic manner is very difficult. In real-world applications you don't create and destroy threads at a high rate and you minimize locking. Benchmarking this is almost as hard as benchmarking programming languages.

    I haven't benchmarked threading libraries, knowing that it will take time that I don't have right now. I can tell you, however, that just the I/O subsystem in FreeBSD, as in filesystems and networking, isn't any slower than Linux. Not to mention GbE and today's disks are too slow to really show an OS difference for most tests anyway.

    %%

    The real question of I/O subsystems will come in when ZFS+Zraid is standard in FreeBSD and BTRFS is standard in Linux. In a couple of years from now nobody will understand why we ran today with no snapshots, with the raid hole (from block layer raid systems) and without transparent compression in the subtrees where we want it.

    But these filesystems are complicated and there's some real performance difference visible.

    %%

    An area completely overlooked in the benchmark is the VM subsystem. Namely - what happens when you overload your RAM and paging commences? Linux used to make very bad choices here (dropping readonly pages, which is a wise thing as such, at rates about 10 times higher than wise).

    FreeBSD used to be the go-to OS on memory shortage thanks to John Dyson's VM work (backed by a large database company that provided support and a realistic benchmarking environment during that development).

    But today? Nobody knows. I'm not aware of any benchmarks that you can download that simulate memory stress and map the tradeoffs that the OS makes.

    In general, the biggest obstacle to improve Linux, FreeBSD and everybody's else's OS performance is a lack of high-quality benchmarks.

    Why don't people develop more benchmarks? Because they get annoyed that today, in 2009, no realistic OS benchmark will show a single number as a result. All OS benchmarks today can only make a map of what tradeoffs the OS chose, what part of the running application suite got the short end in favor of what other part. This isn't sexy and publishers don't like it.

    People like reality reduced to single numbers, but in the area os OS benchmarks (and language benchmarks) that party is over.

    Myself, I found myself gasping many years ago when I benchmarked network I/O versus userland CPU load. I hammered a couple of GbE interfaces while at the same time running moderate memory-intensive CPU benchmarks (with no network access from those CPU lo