×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

FreeBSD 7.0 Bests Linux In SMP Performance

kdawson posted more than 6 years ago | from the coulda-been-a-contender dept.

Operating Systems 288

cecom writes "After major improvements in SMP support in FreeBSD 7.0, benchmarks show it performing 15% better than the latest Linux kernels (PDF, see slides 17 to 19) on 8 CPUs under PostgreSQL and MySQL. While a couple of benchmarks are not conclusive evidence, it can be assumed that FreeBSD will once again be a serious performance contender. Some posters on LWN have noted that the level of Linux performance could be related to the Completely Fair Scheduler, which was merged into the 2.6.23 Linux kernel." Update: 03/06 21:32 GMT by KD : An anonymous reader sent in word that Linux kernel developer Nick Piggin reran the benchmark today and came to a different conclusion: In his benchmark Linux was faster than FreeBSD.

cancel ×
This is a preview of your comment

No Comment Title Entered

Anonymous Coward 1 minute ago

No Comment Entered

288 comments

You don't have to be Kreskin (-1, Flamebait)

BadAnalogyGuy (945258) | more than 6 years ago | (#22662150)

Is it any wonder that FreeBSD is better than Linux? Nothing against Linux, but it's hardly an apples to apples comparison.

Re:You don't have to be Kreskin (5, Funny)

morgan_greywolf (835522) | more than 6 years ago | (#22662210)

Nothing against Linux, but it's hardly an apples to apples comparison.
Exactly. I mean, who cares about performance on a dying OS? ;)

Re:You don't have to be Kreskin (1)

Anonymous Coward | more than 6 years ago | (#22662616)

Why on earth do you think FreeBSD is a dying OS? Just because kids seem to think Linux is cool and better than everything else, doesn't mean FreeBSD or any of the the other *BSDs are dying. It just means it has more serious and educated users :-)

Re:You don't have to be Kreskin (1, Funny)

Anonymous Coward | more than 6 years ago | (#22662782)

Dying since three decades ;-)

Re:You don't have to be Kreskin (4, Insightful)

CastrTroy (595695) | more than 6 years ago | (#22662220)

It probably has a lot to do with FreeBSD having a much more focused niche. FreeBSD is really tuned primarily for servers. You can use it on your desktop, but that's not really it's main purpose. Linux on the other hand, has really branched out. It has desktop distros, server distros, embedded distros, and probably a couple other areas I haven't thought of.

Re:You don't have to be Kreskin (3, Interesting)

oscartheduck (866357) | more than 6 years ago | (#22662322)

You think so? I dunno, it seems to me that FreeBSD suits the desktop role really well; I use it for preference. Especially when you consider that the only OS with more packages is Debian, it makes sense that it can fit a desktop role extremely nicely.

Re:You don't have to be Kreskin (3, Insightful)

CastrTroy (595695) | more than 6 years ago | (#22662420)

How many of those packages are desktop packages? Seems like a odd metric to just compare the number of packages as to how well an OS is suited to the desktop.

Re:You don't have to be Kreskin (3, Interesting)

oscartheduck (866357) | more than 6 years ago | (#22662502)

Well, I don't think I've ever installed any package from anything other than the ports system. Lots? I know I've installed everything from Gnome, XFCE and KDE, through OpenOffice and a bunch of stuff in between.

You're right that mere numbers of packages is a weird metric, but what else can we offer? FreeBSD has great performance, and has everything necessary to be either a good server *or* a good desktop. It's much like Gentoo that way -- it doesn't focus on being either one or the other, it focuses on being a solid basis. What you put on top of that basis is your choice. It honestly seems to me that the distinction between server OS and desktop OS is its own entire discussion; if we can come to a good notion of what either means, we can reach a nice conclusion. If we take the current crop of Linux desktop OSes, though, I don't see any more integration between, say, Fedora and Gnome and FreeBSD and Gnome, or Ubuntu and Gnome and FreeBSD and Gnome.

If I think about it, it does seem that Ubuntu starting with a GUI interface and letting you find the command line by yourself is more friendly to the average user; I haven't installed FreeBSD using anything other than minimal-install for so long that I don't know whether you can have a GUI start up by default. And FreeBSD's installer, whilst excellent for its audience, is less friendly to a first timer. If we take those metrics, the idea of "can I sit down and first time use it without documentation?" then a lot of the linux crop are friendlier, yeah. But the documentation *is* very hand-holdy, and very very thorough for FreeBSD. And nicely available online.

Re:You don't have to be Kreskin (3, Interesting)

Anonymous Coward | more than 6 years ago | (#22662756)

Don't forget, there's always PC-BSD for the Linux users - simple, point'n'click installer, etc.

Re:You don't have to be Kreskin (1)

street struttin' (1249972) | more than 6 years ago | (#22662670)

Well, according to this [freebsd.org], there are several thousand. Not to mention that due to linux emulation, freebsd can run anything linux can run.

Re:You don't have to be Kreskin (1)

Neil Hodges (960909) | more than 6 years ago | (#22663336)

Oh really? Have you tried to use Cedega on FreeBSD? What about Wine (on FreeBSD 6 or older)? What about anything that uses NPTL? If the emulation layer worked as 2.6, it would run everything Linux can in binary.

Re:You don't have to be Kreskin (1)

fandrieu (858614) | more than 6 years ago | (#22662770)

Although FreeBSD ports contain all the major "Desktop" packages, I don't think it's a "Desktop OS".
Mainly because the "base system" is purely text based, if you want to do something with the system, you do it on the command line, there's no GUI based procedure in the FreeBSD handbook.
From what i've used, there's no GUI configuration tool specific to FreeBSD. I would even guess there's *nothing* FreeBSD specific which is a GUI.
Compare this to RedHat or Ubuntu where every bit of graphic is themed and you have a bunch of custom graphic utilities.

When you install XFCE on FreeBSD, you get XFCE.
When you install XFCE on Ubuntu, you get Xubuntu.

Don't get me wrong, I don't say it's not suited to Desktop, just that the Desktop experience is not part of the OS, it's in the ports....and that's why i've been using it since 4.x

Re:You don't have to be Kreskin (1)

Corporate Troll (537873) | more than 6 years ago | (#22662960)

Mainly because the "base system" is purely text based, if you want to do something with the system, you do it on the command line, there's no GUI based procedure in the FreeBSD handbook.

Strange, I was under the impression that Debian's base install has no GUI either. As a matter of fact, I have a Debian Postgresql server that has never seen anything related to X.

Re:You don't have to be Kreskin (4, Insightful)

Klaus_1250 (987230) | more than 6 years ago | (#22662748)

I dunno, it seems to me that FreeBSD suits the desktop role really well

It does (I use it too) BUT only in specific environments. FreeBSD hardware support is not bad, but it is nowhere near as complete as that found in the various Linux distro's. My wireless keyboard + mouse is supported under any recent Linux distro, on FreeBSD, only the keyboard works (fixable with a unofficial ums.ko though). No support under FreeBSD for my DVB-C PCI card either.

Re:You don't have to be Kreskin (1)

calebt3 (1098475) | more than 6 years ago | (#22663014)

only OS with more packages is Debian
Whatever happened to Windows? Or does programs != packages?

Re:You don't have to be Kreskin (3, Informative)

peterpi (585134) | more than 6 years ago | (#22663244)

I would say that packages != programs.

With a debian "package", I know exactly how to install it (the same way as all the others), and I know that there is a set version of that package that corresponds to, say, "Debian Sarge". I know that if I install it, it will pull along any libraries it needs, and that it won't break anything already on my system. I know it doesn't always work like that, but that's the idea. I think of a "package" as part of the distribution. Somebody has decided that it forms part of the distribution, and has hopefully tested it as such.

A "program" is what Windows has so many of. But all bets are off when it comes to versioning, library dependencies, etc. Even how to install it. If you think of Windows as a "distribution", then it doesn't come with all that many packages at all. A Desktop environment, a browser, some photo and media tools. Mac OS X doesn't really fare all that much better. I love OS X to bits, but the first thing I did was install a third party program (firefox).

Re:You don't have to be Kreskin (2, Funny)

AJWM (19027) | more than 6 years ago | (#22663302)

only OS with more packages is Debian
Whatever happened to Windows?


Vista. That's a non-operating system.

Re:You don't have to be Kreskin (2, Informative)

darthflo (1095225) | more than 6 years ago | (#22663330)

A package is a bundle of stuff that can be installed using your OS' package management facility. BSD's Ports, Gentoo's portage, Debian's apt (also used by Ubuntu). The "big two" commercial OSes don't really have an equivalent to that; Windows e.g. only lets you install some optional components using a unified frontend. Counting the number of packages is easily possible and done by the repository maintainers.
A program is quite hard to define. A handwritten script could be considered a program by some, others may reserve the term for publicly available software. The number of programs is very hard to approximate and impossible to determine unless you chose an uncommon, restrictive definition and a point in time of which you possess all information.

Nobody said Windows didn't have lots of programs and software available for it; probably more than any other OS family on the planet. It does not, however, have a central facility to classify and automatically install them from. (Cue jokes about IE + ActiveX doing a great job of auto-installing all the malware from MSFT's repository called "the intertubes").

Kreskin sez (5, Funny)

eclectro (227083) | more than 6 years ago | (#22662454)

Linux is actually better than BSD because you can roast marshmallows over the schedular flamewars.

Well (5, Interesting)

morgan_greywolf (835522) | more than 6 years ago | (#22662176)

I'd be interested to see results from pre-CFS kernels.

Not that FreeBSD hasn't made major performance improvements.

Also, I think that a database test isn't a complete picture. For example, some OSes like IRIX or Mac OS X perform very well on streaming of local video and audio, but I wouldn't benchmark Oracle or PostgreSQL on either.

Re:Well (4, Interesting)

archen (447353) | more than 6 years ago | (#22662298)

And I like the article summary stating that FreeBSD may now be considered "a serious performance contender". Like FreeBSD was 1000% slower than Linux? Most servers spend their time spinning their wheels anyway, generally I'd rather look at security, how it handles under load and other metrics than whatever "performance" is considered in this instance. Linux is good for some things, BSD for others.

About the only really good news here is that MySQL performance is actually adequate. As MySQL has always been a dog (usable, but a dog) on FreeBSD, the general rule of thumb was that if you needed MySQL you should stick to Linux; all other factors being equal. So now at least we can get down to other factors that are important instead of one database that performs poorly on one system.

Re:Well (5, Funny)

calebt3 (1098475) | more than 6 years ago | (#22663094)

Most servers spend their time spinning their wheels anyway
And then along comes a /. article...

Re:Well (1)

makomk (752139) | more than 6 years ago | (#22663222)

Acoording TFA, FreeBSD didn't even have proper SMP support until relatively recently. Until 5.0, released in 2003, only one CPU could run kernel code at once. (To be fair, I think Linux still hasn't fully got rid of its own Big Kernel Lock, but...)

Re:Well (5, Informative)

Zpin (921535) | more than 6 years ago | (#22662598)

The linked PDF contains pre-CFS kernel benchmarks. Conclusion:

The new CFS scheduler in 2.6.23 is "Completely Fair" ...to FreeBSD

Re:Well (2, Insightful)

saleenS281 (859657) | more than 6 years ago | (#22662874)

You also wouldn't run Oracle or PostgreSQL on them unless you wanted to lose your job. The test is a great test for linux vs. freebds, because it's the type of environment where they'd compete.

From TFA... (1)

Lonewolf666 (259450) | more than 6 years ago | (#22663248)

As Zpin wrote a few posts above, the linked PDF contains pre-CFS kernel benchmarks.

Short version:
Linux pre-CFS is faster than post-CFS, but FreeBSD still comes out ahead, by maybe 5%.

finally (2)

Zashi (992673) | more than 6 years ago | (#22662190)

I can finally make full use of my quad-core toaster!

That toast isn't going to serve itself!

Re:finally (3, Funny)

BitZtream (692029) | more than 6 years ago | (#22662280)

Your comment would have been funny if we were talking about NetBSD. NetBSD is the one that runs on everything, including a toaster.

Re:finally (5, Funny)

UbuntuLinux (1242150) | more than 6 years ago | (#22662376)

Hello. I don't believe you know me, but you might be able to help. I use Ubuntu Linux, and I am helping the daughter of a friend to install Linux onto her PC this evening. I have never really spoken to a girl before, and was thinking that maybe if I made a joke, it might break the ice. You are obviously excellent at humour, and I was wondering if you could give me some tips? For instance, it is inevitable that something will go wrong during the process, and I was thinking that maybe if I said something like 'this is almost as unreliable as my beard trimmers!' then it would demonstrate that I am a funny guy. Can you offer any kind of critique of this line, or offer any other advice?

Re:finally (1)

thePowerOfGrayskull (905905) | more than 6 years ago | (#22662614)

Holy carp, that was funny. One of the few comments that's gotten me to laugh aloud for more than a half-second. Oh, to recant my hastily-spent mod points...

How to recover your mod points (1, Informative)

A nonymous Coward (7548) | more than 6 years ago | (#22662726)

Post a comment. When faced with the two incompatibilities, slashcode keeps the comment and tosses the mods, presumably because comments might have attracted subcomments and thus be impossible to remove.

This assumes that youare still within the time frame of modability. I don't know what happens if you have used all your modpoints; does that automatically end your modability time slot?

Re:finally (1)

revans2 (1147093) | more than 6 years ago | (#22662676)

FreeBSD did just get arm support so you might have a good chance at getting it to run on a toaster.

Re:finally (0)

Anonymous Coward | more than 6 years ago | (#22662290)

that's netbsd but nice try

It's that year again! (4, Funny)

n3tcat (664243) | more than 6 years ago | (#22662208)

Maybe now we can finally declare year of the linux desktop!

Wait, what?

BSD Desktops (2, Interesting)

parvenu74 (310712) | more than 6 years ago | (#22662224)

Speaking of which: are there any "distros" out there ship a combination of FreeBSD and the latest Gnome desktop? I think that would be a better combination than Ubuntu's Debian+Gnome combo, personally.

Re:BSD Desktops (2, Interesting)

BitZtream (692029) | more than 6 years ago | (#22662314)

Yes, the only FreeBSD 'distro'. FreeBSD is not fragmented like the 100 and 1 Linux distros

Download the FBSD isos, install the gnome packages. Not new enough, build from source using ports. While it probably doesn't include the absolutely latest Gnome, the FreeBSD people tend to appreciate stability over cutting edge features, so its probably going to be a little behind the bleeding edge, for something popular like gnome though, it should match up with the latest stable release within a very short period of time.

Silly, ignorant children. (1)

DaedalusHKX (660194) | more than 6 years ago | (#22662464)

Dig up Desktop BSD.

Quite nice, if not my cup of tea. IMHO, BSD is for servers, but if I were tempted to use BSD for desktops, it'd be Desktop BSD.

That being said, it seems VERY clean and useful, but it does use KDE (no load time on my laptop, when accessing menus, which means something has been fixed on BSD that hasn't been fixed on Linux KDE yet.)

I think one can force it to use something other than KDE and still keep the "Desktop Tools", which make Desktop BSD quite useful. (Only OS that detected my SD MMC controller without a single extra effort from me.)

Re:BSD Desktops (3, Informative)

ninjaz (1202) | more than 6 years ago | (#22662596)

Yes, the only FreeBSD 'distro'. FreeBSD is not fragmented like the 100 and 1 Linux distros

There are FreeBSD-based PC-BSD [pcbsd.org] and DesktopBSD [desktopbsd.net] Both of them are using KDE, though.

Re:BSD Desktops (1, Informative)

BitZtream (692029) | more than 6 years ago | (#22663012)

No, those are forks.

FreeBSD is not just a kernel like Linux. FreeBSD is the entire package. You don't have other distros, you have forks of the original.

Re:BSD Desktops (5, Insightful)

Anonymous Coward | more than 6 years ago | (#22662604)

FreeBSD is not fragmented like the 100 and 1 Linux distros

I'm a FreeBSD fan, but what kind of logic is that? You pick one example out of a fragmented set, and compare it to an entire other set of operating systems.

You act as if NetBSD, OpenBSD, DragonflyBSD, Darwin, etc, do not exist. Of course and item cannot be fragmented if if you define it's containing set as "itself". Makes about as much sense as:

Ubuntu is not fragmented like the 100 and 1 BSD distros

Re:BSD Desktops (2, Insightful)

BitZtream (692029) | more than 6 years ago | (#22663236)

Of those you listed, Only DragonflyBSD and Darwin use a FreeBSD kernel, Darwin considerably modified, to the point that it might as well be counted on its own. You can not drop the FreeBSD kernel in any of them and have things work, except for Dragonfly, but even then it still requires (minor) modification.

Compare/Contrast to Linux distributions. The kernel, assuming version matchs, is rather interchangable between the distros. Its the file system layout, the utilities included, and default configurations that define the 'distro'.

With FreeBSD, all of the above is defined as 'FreeBSD'. DragonflyBSD is a fork it. As is PC-BSD and a couple of the even less known forks.

Linux distros are 'the GNU/Linux kernel' and 'the utilities and userland tools required to make it usable'.

Saying there are FreeBSD distros is like saying there are 'Slackware' distros, or some such variation. While I'm sure you could argue it, the meaning behind what we all consider it to be would be different than what people think of when its said.

Re:BSD Desktops (0, Offtopic)

RiotingPacifist (1228016) | more than 6 years ago | (#22662734)

yeah whe you only have 101 (its much quicker type than explicitly spelling out the and) users you just don't have time to setup distros.

Whats the advantage of not having any distros? that everything needs to be compiled from source (ala gentoo) or that everything is precompiled for somebody else's needs (ala debian). While i see that BSD does have many advantages (reliablity, checked code, speed), i really don't see how not-having distros is one, sure it means you don't have to choose a distro, but it also means you cant. The linux distros mean that there is constant competition to deliver the best desktop/server/freest/fastest/securest/smallest/scientific/livecd/usb distro, and while it means there is some duplication of effort the overall pace of development is quite fast (fortunately a lot of the development then makes it into BSDs, but FreeBSD needs linux alot more than linux needs freeBSD (especially as stupid license nazis stop us sharing code *shakes fist*))

p.s the FTA is a troll as this was already coverd at freebsd release time and the wise pointed out that solaris still beats both systems

(as /. mods seam to have degenerated to youtube levels recently, ill have to point out that the top of this post IS a joke, it IS NOT flamebait, and the meat of the post is below. Oh and dear god the comment in brackets is ironic, not stupid)

Why do you "need" distros? (1)

argent (18001) | more than 6 years ago | (#22663360)

Whats the advantage of not having any distros?

What's the advantage of having multiple distros?

that everything needs to be compiled from source (ala gentoo) or that everything is precompiled for somebody else's needs (ala debian)

If you want to compile from source, you can, that's how Ports works. If you want to use precompiled versions you can install packages. You don't need to have multiple distros to be able to configure the system the way you need, you start with a core OS (which you can rebuild from source if you *really* want) and then add packages. There are people who do canned FreeBSD installs and ISOs, similar to Linux distros, but without the distro drama.

(especially as stupid license nazis stop us sharing code *shakes fist*)

What on earth does that refer to?

Re:BSD Desktops (1)

oscartheduck (866357) | more than 6 years ago | (#22662358)

Gnome in FreeBSD is at something like 2.20 -- pretty damn recent. Just install FreeBSD, and either use pkg_add to grab the most recent binaries or build your own gnome by grabbing the latest ports tree ("portsnap fetch extract"'ll do that ) then "cd /usr/ports/x11/gnome2 && make install clean". Done.

Re:BSD Desktops (3, Informative)

Ed Avis (5917) | more than 6 years ago | (#22662746)

You could try Debian GNU/kFreeBSD, though this is not really a distribution of the full FreeBSD system but just its kernel with a GNU userland.

Re:It's that year again! (0, Redundant)

leuk_he (194174) | more than 6 years ago | (#22662654)

Did you note that the report was dated 20 OCT 2007.

What year again?

Dual Core (0, Interesting)

Anonymous Coward | more than 6 years ago | (#22662212)

Does this apply to single processor machines with dual cores or just multiple processors?

Re:Dual Core (3, Interesting)

morgan_greywolf (835522) | more than 6 years ago | (#22662250)

Does this apply to single processor machines with dual cores or just multiple processors?
Interesting point, but from the OS kernel's point-of-view a single-processor, dual-core machine looks exactly like a machine with two processors. So it runs the same code to support SMP whether we're talking single-processor dual-core or multiple processors.

IOW, if there is a performance difference, I would expect it to show up exactly the same in both FreeBSD and Linux (as well as any other OS that supports SMP).

Re:Dual Core (1)

AvitarX (172628) | more than 6 years ago | (#22662400)

Don't dual core CPUs share components (cache maybe?) that an aware OS can exploit for performance improvements?

The same way an HT CPU shows up as 2 CPUs (with disasterous effects) unless the OS is away and can properly exploit it?

Re:Dual Core (2, Informative)

TeknoHog (164938) | more than 6 years ago | (#22662762)

Don't dual core CPUs share components (cache maybe?) that an aware OS can exploit for performance improvements?

The same way an HT CPU shows up as 2 CPUs (with disasterous effects) unless the OS is away and can properly exploit it?

Some dual cores share L2/3 cache, but not all. Another important factors are the shared connections to external world, such as memory. So I presume inter-CPU communication is faster, but external communication can be slower.

That aside, HT is a hack which should not be compared to dual core systems at all. In fact, "dual core processor" is a rather silly marketing term, because it means "two processors on one piece of silicon". In other words, you could interpret the phrase "dual-core CPU" as "a CPU that contains two CPUs".

Re:Dual Core (3, Interesting)

Wdomburg (141264) | more than 6 years ago | (#22663240)

Have you ever looked at a block diagram of the predominant dual core designs? They're not simply "two processors on one piece of silicon". Both Intel and AMD used a shared cache design with a single connection to the system bus (FSB and HT, respectively). In the case of AMD, it also means a shared memory controller. It's a real difference with real performance and power implications, not a "silly marketing term".

Now if you complained about Intel shoving two dies into a multi-chip package and calling that quad-core, I'd agree with you. All the reduced bandwidth of a shared connection to the FSB with none of shared cache! Sign me up!

Re:Dual Core (1)

bhima (46039) | more than 6 years ago | (#22662562)

From reading the PDF I have the impression it applies to both multi-cores and multi-processors. I don't know how it applies to hyper-threading (or whatever they're calling it these days) though... which I suppose will become interesting again in a few months when Intel releases the CPUs that support 2 threads per core. Or, are those out now?? There are so many different Intel CPUs out now I can't keep up with them.

Re:Dual Core (1)

kkenn (83190) | more than 6 years ago | (#22663396)

Yes, there can be different challenges in how to optimally schedule processes depending on what resources (e.g. cache) are shared between multiple CPU cores. The ULE scheduler does a good job in all cases though. In 8.0 Jeff has just committed patches that make use of explicit knowledge about CPU topology, which improves performance in some configurations (e.g. a lot on 16-core xeon systems).

Possibly (3, Funny)

Malevolent Tester (1201209) | more than 6 years ago | (#22662214)

While a couple of benchmarks are not conclusive evidence, it can be assumed that FreeBSD will once again be a serious performance contender
Right up until someone displays a crucifix, that is.

Re:Possibly (4, Informative)

BitZtream (692029) | more than 6 years ago | (#22662394)

The beastie is not evil! Just because he has horns, a pitchfork and looks like the devil doesn't make him evil!

You can tell by his smile. It doesn't look freakish or anything ... does it ...

Pre-emptable kernel? (2, Interesting)

Gothmolly (148874) | more than 6 years ago | (#22662252)

Does FreeBSD have a pre-emptable kernel? One of the things Linux has really focused on lately is desktop interactive performance, so there may be performance tradeoffs vs. a kernel which can't pre-empt itself.

Re:Pre-emptable kernel? (2, Interesting)

archen (447353) | more than 6 years ago | (#22662412)

in the kernel config there is a preemption option which I believe is enabled in the default kernel. Generally you can turn this on and off, and use a different scheduler if you want to, but there isn't the myriad of options to tinker with in Linux. Since many don't bother switching from the defaults, and many others tend to choose wrong anyway, this might be a good thing.

Re:Pre-emptable kernel? (0)

Anonymous Coward | more than 6 years ago | (#22662578)

Yes, you can switch linux preemption models and schedulers at configure time. So I'm curious which linux kernel configuration was benchmarked? It makes no sense to benchmark "linux", when it defaults to a reasonably low latency desktop profile and server benchmarks are about throughput, not responsiveness.

many don't bother switching from the defaults, and many others tend to choose wrong anyway

That's absolutely ridiculous. Even for users who don't roll their own, vendors offer different kernels for server, workstation/desktop and RT workstation use. The linux configure programs even tell users which options to select!

Re:Pre-emptable kernel? (1)

halber_mensch (851834) | more than 6 years ago | (#22662450)

Does FreeBSD have a pre-emptable kernel? One of the things Linux has really focused on lately is desktop interactive performance, so there may be performance tradeoffs vs. a kernel which can't pre-empt itself.
Yes. The FreeBSD kernel has preemption options to enable preemption. The distributed generic kernels have it enabled.

I look forward (5, Funny)

Clover_Kicker (20761) | more than 6 years ago | (#22662276)

to the enlightening and respectful conversation this article will provoke.

Re:I look forward (4, Funny)

garett_spencley (193892) | more than 6 years ago | (#22662416)

Screw you!

Wait, you forgot to mention ... you use BSD or Linux ?

I have Vista (4, Funny)

StarKruzr (74642) | more than 6 years ago | (#22662658)

but I heard it wasn't compatible with Windows or labtops.

Can you help? Sorry, I am not good with computers. :) I want to download the internet onto my labtop.

Re:I look forward (1)

drolli (522659) | more than 6 years ago | (#22662872)

Yes. Me too. similar discussions:

-Smartphone xyz has a touchscreen, similar to the iphone, and the animations are even nicer.
-web based product abc is better than google efg. You can select more fonts.
-[Notebook from notable series] is nearly as thin as the apple air
-[free office suite x] can read [some standard] better than open office
etc.

General scheme:
[alternative product well known to everybody interested] has [arbitrary unsuprising advantage withing the "version flucuation" in some feature] since [last patchday/last version] over [well known, overhyped popular product], when measured by [some arbitrary method or by looking at it].

Bad news for Linux? (1, Insightful)

Chrisq (894406) | more than 6 years ago | (#22662296)

Since they switched to the Completely Fair Scheduler [wikipedia.org] to improve performance then it means one or two things. Either they have failed, as it seems to run slower than earlier Linux versions in the BSD test, or the tests that BSD chose are "untypical", maybe selected to show a particular advantage to BSD. I don't have the expertise to tell which, but I would be happier seeing some benchmarks from an independent source rather than BSD.

Re:Bad news for Linux? (3, Insightful)

BitZtream (692029) | more than 6 years ago | (#22662370)

Benchmarks are almost but not completely useless. In this particular setup, FBSD 7.0 runs postgres doing some specific set of queries faster than Linux.

Its a safe bet Linux will do some other set of things faster than FreeBSD does them, possibly even another specific set of PostgreSQL queries for that matter. Linux is definately more concerned with desktop app performance. I can say this safely because Linux actually cares about it, FreeBSD does not. Its there to serve, not run X. It will run X, and if they see a way to make performance better for the desktop apps AND the server apps, then it may go in the source tree. If its going to hurt the server side, don't bet on it.

While I use FreeBSD for my servers because its got a clean filesystem layout and is designed to be a server OS, I'd be willing to bet that someone with deep knowledge of PostgreSQL on Linux could give it a run for its money by tweaking the kernel for server performance.

Re:Bad news for Linux? (0)

Anonymous Coward | more than 6 years ago | (#22662426)

Are you drinking cleaning products? The BSD folks KNOW they're going to be under a microscope with this release and these claims. They wouldn't falsify anything; too risky. Plus, they don't need to. I use FreeBSD and wouldn't dream of going back to Linux, but I think BSD needs frontline support for Flash before it becomes a true desktop contenda'. Until then it will have to be happy kicking Linux's ass in the server/DB space.

Don't worry Slashdotter. The Linux people are good. This is just competition you're seeing here. They'll have an answer at some point and then it will be your turn to crow. It's all good.

Re:Bad news for Linux? (4, Insightful)

Azarael (896715) | more than 6 years ago | (#22662880)

The article is probably misleading (surprise, surprise), as the tuning documentation for PostgreSQL *states* that good IO performance has more of an impact than good CPU performance. Additionally, some other information I've read (search for postgres tuning/optimi(z|s)ation online) recommends FreeBSD because of its strong IO performance. I'll go out on a limb and assume that MySQL's performance attributes are similar.

In my opinion, the article summary is a pretty big red herring because the SMP performance may not have a huge impact on the result.

Re:Bad news for Linux? (4, Insightful)

atomic-penguin (100835) | more than 6 years ago | (#22662896)

For one, CFQ is not supposed to be an optimized I/O scheduler for database loads. That's where the Deadline scheduler comes in. You wouldn't want a "Fair" scheduler on your database server, as you would end up putting the database in I/O wait to handle lower priority processes.

Re:Bad news for Linux? (1)

Fweeky (41046) | more than 6 years ago | (#22663258)

CFS is a CPU scheduler, and rather similar to FreeBSD's ULE; CFQ and Deadline are IO schedulers, and completely different beasts.

In your face, bazaar! (3, Funny)

Anonymous Coward | more than 6 years ago | (#22662372)

Cathedral FTW!

In short, wow (4, Interesting)

MrNemesis (587188) | more than 6 years ago | (#22662398)

Very, very nice scaling performance under PGSQL is evident in the PDF, and I've no reason to assume the benches aren't legit. I think part fo the reason that PG was traditionally slower than MySQL was that it did lots of complicated locking to provide better scalability across processors, whereas we see MySQL performance dropping off after we go to more than eight cores. I think this was the same philosophy Sun took with "Slowaris", which was also far more scalabe than Linux at the time the moniker was in widespread use.

Still, I hope Linux can at least match this sort of superb scalability. CFS is fairly new, and I know there's optimisation work been done to it in .24 and .25, although it was a little sad to see the first iteration of CFS performing more poorly than its predecessor (and, if this is the case, I can see why Linus stonewalled CK's patches for so long, since they were mainly tested on desktop workloads). Are there any apples-to-apples comparisons out there that test various flavours and versions of Linux and BSD with a wide range of benchmarks? At the best review sites do a few benches with MySQL, and six months later everything has changed so it's incredibly difficult to do good performance comparisons.

Even so, it's refreshing to see precious little of the "BSD fudged their benchmarks!" trollspeak in the LKML thread, and plenty of talk about how to make Linux better. Open source is hippy capitalism - it also needs healthy competition to keep it in check :)

Offtopic: bug linked to in the LKML pointed me at this http://www.latencytop.org/ [latencytop.org] Sounds quite nifty

Re:In short, wow (1)

ivoras (455934) | more than 6 years ago | (#22663272)

Very, very nice scaling performance under PGSQL is evident in the PDF, and I've no reason to assume the benches aren't legit.

Oh they are legit. The guy who did them has a thing for proper benchmark procedure and statistical analysis and is a physicist in real life.

He isn't an expert in MySQL and PostgreSQL but if he did underoptimize them, you can be assured he uderoptimized them in exactly the same way on both OS-es :)

Duly noted (0)

Anonymous Coward | more than 6 years ago | (#22662528)

Well, the next time I have an 8-core xeon processor and want to run MySQL or PreSQl I'll check it out. But in the meantime I'll wait for some more comprehensive, independent benchmarks. If Microsoft announced that based on their testing Windows Vista was capable of performing 10% better than their competitors on multi-core testing, would we jump all over that?

Bogus PostgreSQL tests (3, Interesting)

greg1104 (461138) | more than 6 years ago | (#22662554)

While I'm glad for FreeBSD they're showing good numbers again, their testing of PostgreSQL in this study is rather odd. The results are using the read-only tests from sysbench. You can see from its sourceforge page [sourceforge.net] that sysbench is a MySQL benchmarking tool that has some rudimentary PostgreSQL support bolted on top. That particular code is so bad that the last time I checked, turning on the write OLTP tests deadlocked the PostgreSQL server, as it wasn't putting statements into transactions correctly (which of course the ancient MySQL versions this code targeted doesn't care about). As the sysbench tool hasn't been actively maintained in ages I doubt that has improved.

The claimed "15% faster than linux" is pretty clear in the MySQL tests; the PostgreSQL ones have a weird dip in them but are in general much closer. I'd be comfortable if the result of this study was "FreeBSD 7 has been optimized to be 15% faster running MySQL than Linux", because that matches what they did (note the specific libpthread patch for example). But the fact that they used such an awful PostgreSQL benchmarking methodology leaves me hesitant to draw a broader conclusion than that based on their tests.

Where does this leave dragonfly? (2, Interesting)

CarpetShark (865376) | more than 6 years ago | (#22662792)

While I'm glad for FreeBSD they're showing good numbers again, their testing of PostgreSQL in this study is rather odd.


Agreed, on both points. What I want to know though, is where this performance improvement, and 7.0 in general, leaves Dragonfly BSD... do they still feel that Dragonfly's choice to split off at 4x and start making radical changes is paying off? Is dragonfly making progress towards better performance, in general, or on particular workloads?

I saw what Matt Dillon did back in Amiga days. I saw what Amigas themselves could do. If Amigas inspired Dragonfly towards a more lightweight model, I'd love to see that fork making more progress.

Re:Where does this leave dragonfly? (2, Informative)

renoX (11677) | more than 6 years ago | (#22663274)

The dev of Dragonfly BSD has switched its aim from being 'a better way to do SMP' to 'SSI clustering' so I doubt that Dragonfly BSD is going to compete with FreeBSD in SMP scalability anytime soon if ever.

Re:Where does this leave dragonfly? (1)

kkenn (83190) | more than 6 years ago | (#22663290)

Dragonfly has still made no progress towards SMP performance with even 2 CPUs (they are still "competitive" with FreeBSD 4.x performance, and sometimes much slower), but this somehow doesn't deter their advocates from believing that Matt Dillon's -- still largely unimplemented -- ideas are still vastly superior.

As we know, unwritten code has no bugs and runs at twice the speed of thought, so maybe so :)

Re:Bogus PostgreSQL tests (0)

Anonymous Coward | more than 6 years ago | (#22662964)

I think you've just highlighted the issue which is that there isn't a decent, up to date, Unix/Linux benchmarking tool.

Overall it seems that FreeBSD 7 has really dragged itself back into the fray. And considering how nice FreeBSD's wireless support is, compared to the half-assed Linux crap that someone thought was a bright idea, I am strongly tempted to give it a go again.

now, if only FreeBSD/SMP (0)

Anonymous Coward | more than 6 years ago | (#22662750)

was actually usable with kqemu, or ran as a Xen DomU, that "extra performance" might be helpful.

good news, everybody! (1)

debatem1 (1087307) | more than 6 years ago | (#22662834)

Sounds good. Presuming that there is merit in the methodology here, we may see some more competition in the market. I'd like it more if there were more code sharing going on, but maybe if we don't get tempers too hot we'll see a little more of that too.

FreeBSD SMP threads + boehm-gc = totally broken (3, Informative)

chrysalis (50680) | more than 6 years ago | (#22662958)

Cool, however it would be better if software working on Linux were also working on FreeBSD.

boehm-gc is totally broken when using threads on FreeBSD SMP. And it's still totally broken on FreeBSD 7.

The Neko virtual machine is in ports, but it's unuseable due to this, I don't even understand why it's in the ports tree. Was it ever tested before being imported?

Just creating a thread:

$loader.loadprim("std@thread_create", 2)(function(z) { $print(z) }, "OK");

makes is crash with a corrupted stack. It works on every other operating system. It seems to work on an UP FreeBSD system, but on a FreeBSD 7 SMP system, it crashes, crashes, crashes.

Server vs. Desktop (0)

Anonymous Coward | more than 6 years ago | (#22662982)

I don't care how powerful FreeBSD is in term of SQL's performance because I still won't use it for my desktop OS.

Some clarifications on my benchmarks (5, Informative)

kkenn (83190) | more than 6 years ago | (#22663042)

Hi, I am the one who performed these benchmarks and I'd like to clarify a couple of things:

* The point of this benchmark is not to unilaterally declare victory over Linux, but to point out that FreeBSD is once again competitive with it on modern high-end hardware and certain workloads. Of course, we are working on other workloads too, and currently perform better than Linux on other benchmarks, and still worse on others. There will no doubt be further friendly competition between the two OSes that will work to the benefit of both. Our message to the Linux developers is that they should not expect to get away with resting on their laurels :-)

* I benchmarked both mysql and postgresql, and FreeBSD 7.0 performs better than all Linux kernels (at least up to 2.6.23) with both databases. Incidentally postgresql is much faster than mysql, contradicting common wisdom. Other fun facts are that mysql 5.0.51 has poorer scaling than 5.0.47, and 5.1.x has *much* worse performance and scaling than 5.0.47 on my tests.

* I benchmarked several versions of Linux including 2.6.20.x, 2.6.22 and 2.6.23. 2.6.20.x has terrible performance http://people.freebsd.org/~kris/scaling/scaling.png [freebsd.org]. This graph is from Feb 2007 and the FreeBSD performance also improved after this point.

* 2.6.22 (which is pre-CFS) mostly fixed this but still performs worse than FreeBSD http://people.freebsd.org/~kris/scaling/os-mysql.png [freebsd.org]. 2.6.23 included the new scheduler and was a major performance regression. I did not yet retest with 2.6.24, so maybe they have fixed CFS by now.

* Contrary to some commenter's assertions that this is not a CPU benchmark, this benchmark is *extremely* sensitive to CPU performance and especially scheduling (in fact, as noted in the PDF, I/O performance is not a factor here). The scheduler really matters here, which is why Linux took a big hit when they switched to CFS (similarly, on FreeBSD the 4BSD scheduler performs much worse). Tuning the scheduler is critical to performance on this kind of workload. The other critical aspect is having a highly optimized kernel without concurrency bottlenecks. 2.6.20 fell over on kernel concurrency, and 2.6.23 fell over with the scheduler.

Hope this helps to clarify things.

Re:Some clarifications on my benchmarks (1)

Bill, Shooter of Bul (629286) | more than 6 years ago | (#22663234)

FYI. Your observations of mysql performance are right in line with what others including google have noticed. The famous google patches significantly improve the scalability regressions introduced. They should eventually make there way into the official Mysql in a couple months or so.

Re:Some clarifications on my benchmarks (1)

kkenn (83190) | more than 6 years ago | (#22663320)

Thanks, it's useful to know. As a "consumer" of mysql it's kind of disappointing they don't do this kind of performance analysis in-house.

Also noted in the FreeBSD 7.0 release announcement (2, Interesting)

bconway (63464) | more than 6 years ago | (#22663328)

Here [freebsd.org], and it applies to a significant number of other network servers.

Dramatic improvements in performance and SMP scalability shown by various database and other benchmarks, in some cases showing peak performance improvements as high as 350% over FreeBSD 6.X under normal loads and 1500% at high loads. When compared with the best performing Linux kernel (2.6.22 or 2.6.24) performance is 15% better.

http://people.freebsd.org/~kris/scaling/bind-pt.png [freebsd.org]

Summary:

* FreeBSD 7.0-R with 4BSD scheduler has close to ideal scaling on this test.

* The drop above 6 threads is due to limitations within BIND.

* Linux 2.6.24 has about 35% lower performance than FreeBSD, which is significantly at variance with the ISC results. It also doesn't scale above 3 CPUs.

* 7.0 with ULE has a bug on this workload (actually to do with workloads involving high interrupt rates). It is fixed in 8.0.

* Changes in progress to improve UDP performance do not help much with this particular workload (only about 5%), but with more scalable applications we see 30-40% improvement. e.g. NSD (ports/dns/nsd) is a much faster and more scalable DNS server than BIND (because it is better optimized for the smaller set of features it supports).

linear scaling? not according to their graph. (0)

Anonymous Coward | more than 6 years ago | (#22663334)

If FreeBSD 7.0 can do 30k TPS with 4 CPU, why does it take 4 and a half CPU to do the same TPS load when the server has 8 CPU.

They need to retract their claim. That graph clearly shows a performance difference based on installed CPU count.
Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Sign up for Slashdot Newsletters
Create a Slashdot Account

Loading...