These benchmarks are the result of a scalable network programming research. The interest in this area is to see how scalable and fast network applications can be on standard PC hardware. Linux 2.4/2.6 is compared to BSDs. Read the accompanied PDF paper here.
That’s all I got to say about that.
Are you sure Solaris is better than Linux 2.6?
Most of graphics in there, I seem to not able to understand how good it is and etc. I wish, he could explain at the each graphics.
Another wish, I would like to see FreeBSD 4.8 to be part of this research. FreeBSD 4.x is a lot faster than FreeBSD 5.x, so I would like to see how close 5.x to get 4.x’s level.
Grabbing -CURRENT is always poor procedure for the BSDs; besides which, choosing only FreeBSD 5.1 and ignoring the stable 4.8 (or 4.9 RC2/3) reeks of foul play. It’s like grabbing one of the early/mid 2.5.x “releases” of the Linux kernel and ignoring 2.4.x and 2.6.x.
Of course, given the author’s rants about OpenBSD (imaginary 1024 cylinder boundary, etc.) and his prior history of vehemently bashing the BSDs (and his personal issues with certain *BSD developers), you have to take the report with more than a grain of salt.
The pdf paper explains how to understand the graphics.
The winner in this case is Open Source software.
The article is very fair and very well thought out. It is almost like reading a research paper. It looks like he is inviting criticism, insight, and corrections, rather than trying to force the experiments into a pre-determined outcome.
Such a thing is not possible in the proprietary world. Any study done on proprietary software has to be tainted with opinion and the experiments must be skewed. Read the EULAs. Some EULAs won’t even allow you to publish the results of such tests.
Open Source software, of the BSD kind and the GPL kind, has totally changed the way we think about and work with software. One day, we will be able to scientifically determine what software we need to suit our needs. We will know ahead of time exactly what limits and what capabilities each piece of software has. IT managers will be able to sort through real facts based on real research, rather than a bunch of shallow articles and biased reports. Software will survive on its merits alone.
The whole industry is going to benefit by this, in a large, large way. The question one day will no longer be “Microsoft or Linux?” but “Which Open Source software should we use, and why?”
I agree. When he’s testing both Linux 2.4 and 2.6, he should have tested FreeBSD 4.8 also.
I agree. When he’s testing both Linux 2.4 and 2.6, he should have tested FreeBSD 4.8 also.
Found his explanation at the bottom of the test. But I still think he should have included it.
He said:
Because I read that they did many exciting scalability improvements in FreeBSD 5, and that’s what this is about, after all.
The graphs make sense if you know the POSIX API. Basically, in each benchmark, he measures the latency of various operations (either in microseconds or clock cycles) as the amount of data to manage (network connections, mapped pages, etc) goes up. The mmap() benchmark is pretty illustrative, so lets use that as an example:
The benchmark starts by making sure that all file data is in the disk cache.
Then, it goes through and maps every other page into the process’s address space, keeping tack of how long it takes to map each one.
Thus, the graph shows the amount of time it takes to map a page vs the number of pages mapped so far.
What he’s trying the measure here is scalability. Scalability is often measured by the time-complexity of an algorithm, which is given in O notation. O(1) means that it takes some constant time to do an operation regardless of the size of the dataset. So, in the mmap() example, an O(1) kernel could take 100 usec to mmap() a page, no matter how many pages had already been mapped. An O(n) kernel could take 0.05 usec *per page*. So when 100 pages have been mapped, it takes only 5 usec (much faster than the O(1) kernel), but when 100,000 pages had been mapped it would take 5000 usec.
That’s the overall gist of the benchmarks. Apparently, the kernel developers went out of there way in FBSD 5.1 and Linux 2.6 to make everything O(1) . Linux 2.6 tends to win, because the absolute latency of often lower, and FreeBSD has some scalability problems in the VM, but Linux 2.6 is also closer to release.
As for FreeBSD 4.8, it wasn’t tested because the benchmark was a scalability benchmark, and while 4.8 is faster (lower absolute latency) FreeBSD 5.1 had a lot of scalability work done on it.
PS> Also, try to keep this benchmark in context. Its not a measure of absolute speed. Its specifically testing latency as load goes up. It doesn’t mean that Linux 2.6 will be faster than *BSD in every case. It just indicates that it (along with FBSD 5.1) have more scalable kernel data structures.
emagius said :Grabbing -CURRENT is always poor procedure for the BSDs; besides which, choosing only FreeBSD 5.1 and ignoring the stable 4.8 (or 4.9 RC2/3) reeks of foul play. It’s like grabbing one of the early/mid 2.5.x “releases” of the Linux kernel and ignoring 2.4.x and 2.6.x.
Of course, given the author’s rants about OpenBSD (imaginary 1024 cylinder boundary, etc.) and his prior history of vehemently bashing the BSDs (and his personal issues with certain *BSD developers), you have to take the report with more than a grain of salt.
I have run into the 1024 thing on OpenBSD. I have to install it on my frist primary partition, it won’t boot on the latter 2. And granted that there may be some unfair benchmarking, but the 1024 cylinder thing is true, atleast in my experiance.
see NetBSD current to be tested…
Anyway
It looks like linux 2.6 is very promissing!
Good job done, Thanx
Regards
andreas
No, 5.1-CURRENT has debugging code that can’t be removed. The only few debugging code in kernel might be disabled. So testing 4.8 makes sense. And in the view of the removal of all debugging code in stable these results looks very exciting.
The author did good job but to make this test more acurate he shoud ask someone from BSD side. The mistake with kern.maxproc option only proves it. I remember similar benchmarks with sendmail. Linux won but then Matt Dillon explained all mistakes made by people responsible for tests. At the end they simply did not know how to set BSD server.
“Also, try to keep this benchmark in context”
Indeed. x86:
“The benchmark hardware is a Dell Inspiron 8000 with a 900 MHz Pentium 3 and 256 MB RAM. The network chip is a MiniPCI Intel eepro100 card, which is supported and well tuned on all operating systems.
Since my intention is to benchmark the software and not the hardware, I didn’t care that it was only a single, slow CPU with slow memory and a slow IDE hard disk. Real server machines built for high scalability will probably use more powerful hardware than this.”
Oh, and Fefe didn’t had enought space to test other systems. Not confident? He provided his tools for others, so they can do the benchmarking themselves and share that alike. Fefe even encourages people to do so…
Can anyone explain the startling performance increase after 4000 connections shown in some tests?
And who are you talking to? Not referring to the article, since Solaris wasn’t included. And no one else seems to have brought up Solaris. So.. if you’d like to make some educated comments on Solaris performance, perhaps you could download the benchmarking utilities and let us know how well/poorly it does.
Ahh, I only read the PDF paper and I didn’t realized that link to website has the better explain and details.
Is this going to shut up all the “BSD is more scalable” trolls? It seems FreeBSD 5.1 and Linux 2.6 are a tie, for all practical purposes.
Oh, and Fefe didn’t had enought space to test other systems. Not confident? He provided his tools for others, so they can do the benchmarking themselves and share that alike. Fefe even encourages people to do so…
I hope some people with more knowledge of the BSD systems will. I’d like a comparison with Windows systems, too. I would (and even have the time) but I never touched a BSD system…
You can clearly see a red line at the bottom and and yet “Linux 2.6 is the clear winner”, not to mention the openbsd graph being too wierd to be true.
This guy works with linux, he wanted to prove linux is better and seems he did this no matter what.
Give me some unbiased benchmarks please instead of this zealot crap (from his site: http://www.fefe.de/nowindows/ ).
Um, read the benchmarks. Yes, FreeBSD had the lowest latency for reading the first byte of the file. However, it had abysmal performance for doing the actual mmap(). That’s why Linux was declared the winner — both had constant time performance for the first-byte test, but FreeBSD had O(n) performance for the mmap() test while Linux remained O(1). This is a *scalability* benchmark, remember that!
Its entirely reasonable for him to express his wish that you not use his work to add to the software library of a proprietory platform. Some people feel strongly about software. Because of its close relation to mathematics and academia, there is a lot of reason to believe that software isn’t “just a product,” but transcends that world. Microsoft, specifically, is right up there with Enron to many people, and its entirely legitimate that an author expresses the desire that you don’t help such a company.
It would be no different in principle than him saying “do not use my software to kill babies.”
I am impressed with the 2.6 release of the Linux kernel and I am even more impressed with FreeBSD’s current branch, there is a lot of potential there! FreeBSD still has to get just a few more things out from under giant locks and they are making really good progress on their KSEs. When FreeBSD 5.2 is released it is going to scream! I would love to see the results of Solaris x86 in these test as well. I would also love to see all of these on a 4 way system with a lot of memory.
“Is this going to shut up all the “BSD is more scalable” trolls? It seems FreeBSD 5.1 and Linux 2.6 are a tie, for all practical purposes”
The only trolls saying anything about scalability are Linux trolls. Any person who uses BSD would never claim that… that is until about FreeBSD 5.3,5.4.
It’s his right to say anything he wants and i respect that but it’s also my right not to give any credibility to someone who says: “Please do not port software to Windows!” because “it’s evil”.
*BSD only has a fraction of the devolpers that Linux has. Does this mean that *BSD will slowly lose popularity and die out(sort of like how unix on servers are being replaced by linux)?
“The only trolls saying anything about scalability are Linux trolls. Any person who uses BSD would never claim that… that is until about FreeBSD 5.3,5.4.”
Yeah, every member of a single group our Holy. Those members never do or think anything Wrong, since they’re not humans.
“It’s his right to say anything he wants and i respect that but it’s also my right not to give any credibility to someone who says: “Please do not port software to Windows!” because “it’s evil”.”
Cool, you checked out his website. “It’s evil” is your perception of that writing. The article contained a constructive opinion about why he asks people to not do so. It’s no true restriction since it is no part of his license (it can’t be a part of the GPL).
http://www.fefe.de/nowindows/
What does that document have to do with this benchmark? Please show me, i’m eager to know! First of all, he hasn’t benchmarked Windows so why you start talking about Windows, i do not understand. Second, to drive an analogy: “You know, he wrote dietlibc, so he’s really cool, and therefore i believe _everything_ he says.” Same kind of reasoning.
“*BSD only has a fraction of the devolpers that Linux has. Does this mean that *BSD will slowly lose popularity and die out(sort of like how unix on servers are being replaced by linux)?”
(Dangerous topic, though)
No. Why not? The 3 BSD’s do not have the same purpose and both 3 have and had afaik a rather small and stable userbase. There are so many resons why people prefer a BSD over the more popular GNU/Linux.
Here are a few, subjective ones i can think of. These are just a few…
* Opinions on licenses, ie. GPL vs. BSDL.
* Portability, ie. NetBSD runs on a lot more archs than Linux.
* Security, ie. people seem to chose OpenBSD for that.
* Firewalling, ie. finding for example PF better than IPT.
* Full blown OS, while Linux is only a kernel and there are so many GNU/Linux distributions; Centralized development versus of multiple centralized development projects (thus at whole beeing rather decentralized).
* Business, they *love* the BSDL. Example is OpenSSH (not an OS, but..) which is used by ie. Cisco.
* Scalability, FreeBSD is more scalable and faster than GNU/Linux (this one can drawn out for now, but a lot other ones still remain).
Bottomline, it’s subjective. And not everyone is convinced on the other points…
<quote>
*BSD only has a fraction of the devolpers that Linux has. Does this mean that *BSD will slowly lose popularity and die out(sort of like how unix on servers are being replaced by linux)?
</quote>
BSD will die right after Windows does. Gimme a break here. Define “a fraction” please. Technically having 95% as many developers is still a fraction.
BSD/OS will die but the free ones aren’t going anywhere but up.
I found this to be very informative. I hope to try this myself, once my classes permit. The only other thing I can say is way to go Linux and FreeBSD developers!
Just thought of it, perhaps this will make the FreeBSD folks think twice about making a dynamically linked /bin and /sbin the default. I can only hope!
* Portability, ie. NetBSD runs on a lot more archs than Linux.
Linux runs on
IA-32
IA-64
x86-64
PowerPC
Alpha
MIPS
SPARC
What does BSD run on Linux doesn’t? I’m not being condesending I’m ignorant on the subject.But from
that list I don’t see anything else left except ‘nitch’
arch’s?
* Security, ie. people seem to chose OpenBSD for that.
debateable, everyone says OpenBSD is more secure than Linux
but if you can use a BSD flavor to push your claim, why not compare it to a linux flavor with security as a top priority instead of redhat||mandrake||etc. Like SElinux or grsec? I doubt you’ll find neither left wanting in the security department. Infact last I checked these distros have much better stack protection built in. look up PAX and RSBAC.
* Firewalling, ie. finding for example PF better than IPT.
agreed, No arguing this, PF is a monster. I think linux kernel 2.7 plans to compete with this.
The only other points IMO that are valid is the BSDL.
sure buisineses love it cause they can take it and not
give anything back. Many developers don’t like this though,
which is why you see an insane amout more of development
with GPL software.
The other point being de-centralized development. When something first comes out this is True, but after time
what major projects have problems working with different
distro’s? This is only a problem with CS student tarballs.
Distro’s handle interoperability pretty well.
One day there will be a utopia where OSnews has a “preview” button.
Sorry for the ugly’s in the last post.
You really have no proof of his bias against BSD. You’ve got proof of his bias against Windows, but that’s a very different thing. He gives no indication in the benchmark that he doesn’t like BSD. He even says (right at the end of the mmap discussion) that if FreeBSD fixes that “one dark spot” that it would “share the top space with Linux 2.6.”
Really? Makes me wanna check out FreeBSD 5.1!
Why doesn’t someone with the time do a test of each *nix on the desktop apps or with file operations or disk performance, etc.?
That would be very interesting but I’ve never seen one comparing Linux, *BSD, Solaris.
No bias against BSD? -> (on openbsd) “I find this behaviour of pissing on internet standards despicable and unworthy of free operating systems.“, yeah! he’s clearly unbiased and neutral, someone i would really trust to make benchmarks. And it’s not it’s just windows as you mentioned, he throws some “pearls” at solaris too.
Just a thought, check out the development notes under FreeBSD’s website – http://www.freebsd.org/news/status/report-mar-2003-sep-2003.html. Even a nightly build would likely have speed improvements over the official 5.1 release.
The 5.2 version of FreeBSD is probably going to have dramatic improvements in speed, specifically on multi-processor systems. They are implementing a new threading model which will probably help with scalability and they are also systematically going through all of the kernel code and removing large grain locks. The 5.2 release will be largely free from these locks. (Something that Solaris has had for years since their 64 bit kernel re-write and Linux is trying to clean up just as much as BSD.) Also, FreeBSD sould have pretty good support for IA64, AMD64, SPARC64, and x86.
Over course, by then Linux will be half way through developing 2.8 And of course by then we can see how DragonFly competes against them as well! Fun stuff!
“What does BSD run on Linux doesn’t?”
No, BSD != NetBSD. I said: NetBSD. Which obviously supports more platforms than Linux (and any other OS i know).
http://www.netbsd.org
I haven’t compared other BSD’s with Linux on this matter.
“debateable, everyone says OpenBSD is more secure than Linux”
We 2 don’t. However, OpenBSD does such stuff by default, while i can’t think of any popular GNU/Linux distribution which does this by default (OWL for example, isn’t popular).
“I think linux kernel 2.7 plans to compete with this.”
Can you post more info about this? I haven’t seen any information about this, except for the idea to make IPT more like PF – which sounds vague to me, at best.
The other comments i can’t defend. I merely stated what i know *BSD people seem to chose *BSD for instead of Linux. It’s not my own opinion.
Except for BSDL. I think OGG Vorbis does this in an awesome smart way: Patentless and beeing better than MP3. Libraries and SDK BSD. The other OGG Vorbis software, will remain GPL. This protects the players to stay open, while it encourages business to chose OGG and allowing them to either contribute to the GPL software and use that (which most won’t want to), or create their own (documents are open too). So both licenses can be combined in a project, which, depending on what you’re aiming at, can be Good. Personally, i prefer mostly GPL…
So he’s automatically against all BSDs just because he had bad experiences with one? It doesn’t make any sense…
If you are so sure that his benchies are hopelessly biased towards Linux, why don’t you try to run his tests on your own machines or make your own unbiased benchmark?
You sound like a pissed off fanboy.
This becomes boring. Stop your ad hominem attacks, it does not bring anything to the discussion.
Look at his website. ipv6 seems to be one of his hobby, and it
was just a bit angry that his stuff doesn’t work with OpenBSD as it should.
Instead of bashing him, you can adress him a gentle letter, and say that the open bsd guys did that on purpose for security reasons http://cert.uni-stuttgart.de/archive/bugtraq/2002/08/msg00319.html
NetBSD Platforms
acorn26 acorn32 algor alpha amd64 amiga amigappc arc arm32 atari bebox cats cesfic cobalt dreamcast evbarm evbmips evbppc evbsh3 evbsh5 hp300 hp700 hpcarm hpcmips hpcsh i386 luna68k mac68k macppc mipsco mmeye mvme68k mvmeppc netwinder news68k newsmips next68k ofppc pc532 playstation2 pmax pmppc prep sandpoint sbmips sgimips shark sparc sparc64 sun2 sun3 vax x68k
Question was not what do you personally like but how portable OS is.
Comparison of SELinux and OpenBSD indicates that you probably do not understand the goals of both OSes:
SELinux is concentrating of what goes in and what goes out. And this is very secure approach. However having a more complex system to work around broken code, still poses security risk. The daemon still has to have the ability to open network sockets, turning your now-compromised server into a tunnel.
If you want similar approach as SELinux then check out trustedBSD (integrated into FreeBSD) OpenBSD addresses the cause while SELinux is as anti-virus programs for windows OpenBSD software is secure, SELinux controls traffic but with insecure apps it seems quite difficult to controll all.
OpenBSD implementation of SSH is best around no guestion about it.
“yeah! he’s clearly unbiased and neutral, someone i would really trust to make benchmarks. And it’s not it’s just windows as you mentioned, he throws some “pearls” at solaris too.”
Sigh. That doesn’t proof bias. It proves he doesn’t like OpenBSD. Which can be proven in several other ways, btw. Or, if you want to say it otherwise, it doesn’t proof he did use his bias in his benchmarks to make OpenBSD look bad. It could be possible (but what isn’t?) but it’s not proven.
Harry doesn’t like Michael, and clearly states he doesn’t. Michael gets killed. Since Harry doesn’t like Michael, Harry must have killed Michael. The police doesn’t investigate any futher, Harry is put to jail. Something is wrong, you see? The last conclusion is based on paranoia, and isn’t actually proven.
The fact he doesn’t like OpenBSD’s IPv6 implementation i knew already, because i read the Qmail mailinglist.
Not happy? Benchmark yourself. Fefe encourages anyone to do so. After reading the discussion on the OpenBSD-misc mailinglist i got a bit sick of these evading tactics…
“Instead of bashing him, you can adress him a gentle letter, and say that the open bsd guys did that on purpose for security reasons http://cert.uni-stuttgart.de/archive/bugtraq/2002/08/msg00319.html“
..which he already knows.
Quote:
“# The OpenBSD IPv6 problem is for security, not evilness
That’s what itojun has said for ages. When I challenged him to point to even one case that demonstrated anyone was ever negatively impacted by the normal behaviour, he posted a message to bugtraq asking for people to step forward. Nobody did.
By the way: Linux Kongress had an own talk about how to use autoconf macros to write portable IPv6 applications. This is because the API got fragmented, which is a very bad thing, especially for something new we want people to adopt. Like IPv6.”
Then the argument i heard was ”Itojun knows what he’s doing” on OpenBSD-misc and some other kind of forks of this quote. Not convincing to me.
I personally had problems because of this Felix didn’t want to help/port djbdns+ipv6 patch to OpenBSD, Henning didn’t want to supply me his patches, and finally the OpenBSD team who *just see the quote*. Thanks a bunch.
It would seem that most, if not all (!!), of Linux’s classic problems have been addressed with 2.6 – the VM most importantly. Its more then merely caught up with BSD. ๐ I’m very impressed, it would seem that those desktop optimizations did nothing to hurt its scalability – well cool. The complaints about FreeBSD are valid, I’d love to see a rematch once FreeBSD 5 is more stable – THAT would be interesting. Also, can you compile and run a 2.2 kernel on a modern distro like Red Hat 9 or some such? I’d love to see a benchmark showing 2.2, 2.4, and 2.6 to show how far its progressed since 2.2 was released (when was that? ’98?). Hell, why not toss in 2.0 as well. ๐
NFS seems to have been a weakness of Linux in the past, it couldn’t scale for sh*t if I recall – some digital effects company tried it for their renderfarm and had to back away, performance sucked – they went back to Irix. I don’t recall that article, but I do remember that part. I wonder how 2.6 fairs in the NFS department, anyone know?
it is not. Assume the worst, simply look at BeOS or Amiga – Amiga especially, the users still exist. The very fact that BSD is open source more or less guarentees that it cannot die. They survived the lawsuits, they’ll be around for a long time yet. Do you think they’d just shrug their shoulders and quite after seeing how well Linux is doing lately? BSD has a very large user base, not as large as Linux, but nothing to sneeze at. I mean Christ, look at Minix – its still being developed, if not sloooowly.
…that the ensuing comments would generate into a flamewar.
Overall this was a very excellent view of the development branches of Linux and FreeBSD and how they compare. Unfortunately NetBSD was sort of left out in the code as he didn’t test the development tree and consequently NetBSD had to compete without kqueue support.
I think it’s very refreshing to see that FreeBSD 5.1 can hold its own against Linux 2.6, and hope for further improvements after we see a 5.x -STABLE release.
I didn’t notice any particular bias in the individual doing these tests. Performing benchmarks as a single person on multiple operating systems is quite difficult, and I have to hand it to this guy for doing the requesite work and preparing these graphs.
It appears we have the first veritable evidence that the Linux 2.6 VMM is superior to the FreeBSD 5.1 one in the mmap performance. Of course, FreeBSD’s page management code still appears to be superior, but this isn’t an excuse for FreeBSD’s inital mmap() overhead. This actually surprised me quite a bit, and I hope these benchmarks somehow indirectly result in the FreeBSD developers analyzing their mmap() implementation and perhaps looking at the Linux 2.6 approach, as clearly it can and should be made O(1). I also hope the OpenBSD team evaluates their page management code and figures out why manipulating memory mapped files is so horribly slow.
This also points out something odd in the FreeBSD kqueue implementation… the latency of the kqueue call is actually decreased when it is monitoring over 4000 connections. This is a rather odd, arbitrary number, which lead me to believe I could find it hardcoded somewhere in the kqueue implementation. Unfortunately, grepping the kernel source for both 4000 and FA0 didn’t turn up anything interesting. I’ll be interested to hear if someone discovers the cause of this behavior.
It also appears the OpenBSD team has a ways to go before kqueues will behave like they should. I certainly hope we won’t see them behaving this way in MacOS X Panther.
Which would be better on an older machine? I have a k6-2 450Mhz with 384MB RAM.
Sorry I mean’t using it as a desktop.
Not sure. I am running 5.1 on a P2-400 with gnome. No problems. Also, it feel subjectivly faster than Linux 2.4 running on a P3-450 (my machine at work). I’ve since put Linux 2.6 on the work machine, and now there is not too much difference in speed (or rather responsivness). The P2-400 also has SCSI while the Linux box has IDE. This probably helps program load time on the BSD box a bit.
All in all, I’m happy with 5.1. Been a while since I ran 4.x on that machine so I can’t comment. Hope that helps.
Debate is open, competition has started. Users will gain benefits from that.
Heck even if you submitted an article on how Mongolia was using a combination of *BSD and Linux ye would get a flamewar. *rolls eyes*
It’s amazing how many *nix people out there spend time attacking one another. The most important thing is that all 5 OS’s (including dragonflybsd) are free and opensource. There’s nothing stopping you from looking under the hood and learning something new. Instead people got to go troll about licenses.
All i can say is “Different strokes for different folks”
I think you’ll find this very informative reading:
http://www.freebsd.org/releases/5.1R/early-adopter.html
FreeBSD is just about to release the final version of 4.9, so if you can wait one more week, that would probably be the safest bet for anyone interested in trying out FreeBSD.
The BSD are not free. They can be taken, closed, pillaged, and profitted off of by large corporations with no repercussions.
Yes, but much like the GPL no one can take away the right of the original BSD licensed source code to be continually developed and extended to have the same functionality as the commercial program which uses BSD licensed code.
But let’s look at some definitions of the word “free” as defined by dictionary.com:
Not controlled by obligation or the will of another: felt free to go.
Not affected or restricted by a given condition or circumstance: a healthy animal, free of disease; free from need.
Not subject to a given condition; exempt: income that is free of all taxes.
By these definitions, the BSD license better fits the word “free” than the GPL. The GPL is littered with several conditions, to the point that it cannot be safely interpreted by an individual who is not a lawyer. Developers who choose to further develop GPL software are obligated under the GPL to the source code if they distributed modified versions to the public. Under the proper definition of the word “free” this violates all three of the stated definitions, as conditions obligate an individual to a particular course of action.
Those arguing the GPL is “more free” than the BSD license have redefined the word “free” to mean something completely different. I don’t know about you, but I’ll stick with the dictionary definition, thanks…
let me see, last time i looked i could download all the BSD’s for free (well other then broadband costs) i then had the freedom to do with them whatever i wanted, including modifying source code etc. etc.
In that case it’s sounds “free” to me.
note: I’m a Linux user, i’ve never played around with BSD other then installing FreeBSD once (simple procedure — however i suffered a hard-disk failure before i could play around with it)
I find zealots wether they be Linux/fsf or *BSDers extremely tiresome. The lot of them need to seriously grow up.
Both Linux and *BSD are excellent systems which complement each other quite well. ya no doubt one might have advantages over an other in certain areas (and vice versa) but both systems are free and opensource, the competition is a good thing. As we end up getting a better system (be that a linux or a *BSD system)
Personally, with nothing invested emotionally or otherwise in linux or *bsd, I think this is a fantastic effort from this person.
If the developers don’t get pouty about it they can gain from this exercise. What issues need looked at? What are they doing right? What are others doing right?
Good stuff.
I’d like to see this not only tested on better x86 hardware, but also on a different architecture, such as Alpha. It’s well supported by all the OSs used in this test. Anyone have a spare Alpha machine lying around?
if you “would like” something please do it by yourself ,
itis really easy and we all will see results
Those arguing the GPL is “more free” than the BSD license have redefined the word “free” to mean something completely different.
Not at all. It’s just that with the GPL, it’s the code that is free (and cannot be made un-free), and therefore it privileges users, while with BSDs freedom is focused more on developers. Same freedom, different focus.
I don’t know about you, but I’ll stick with the dictionary definition, thanks…
How about the first definition that appears on dictionary.com: “Not imprisoned or enslaved; being at liberty.”
How can BSD code that has been modified and incorporated into a proprietary software product be said to be “at liberty”?
I personally like the GNU definition of software freedom. Let’s review them, shall we?
– The freedom to run the program, for any purpose (freedom 0).
– The freedom to study how the program works, and adapt it to your needs (freedom 1). Access to the source code is a precondition for this.
– The freedom to redistribute copies so you can help your neighbor (freedom 2).
– The freedom to improve the program, and release your improvements to the public, so that the whole community benefits (freedom 3). Access to the source code is a precondition for this.
If someone releases a program under the BSD license, then someone else modifies it and incorporates it into a proprietary product, as a user I no longer have access to that code. Therefore, that code is no longer free, and I cannot redistribute it. I’m not saying that this is necessarily a bad thing, but from a user’s (not a developer’s) point of view, the “freedom factor” is definitely lower.
GPL licensing is more like dictatorship: rulers know better that public what public needs/wants. BSD is different. The code is absolutely free. Whatever developer will do with BSD licensed code is up to such developer.
“If someone releases a program under the BSD license, then someone else modifies it and incorporates it into a proprietary product, as a user I no longer have access to that code. ” – that is true, but the original code is still available and everybody can use it. The GPL licensing has in fact more limitations than BSD as it forces specific ruling. Apple would never use GPL licensing for this reason. Thanks to BSD licensing OS X is very nice desktop OS and linux desktop developers can learn from it. GPL license does not give the freedom of choice in contrast to BSD.
“I personally like the GNU definition of software freedom. ”
All of cited by you defintions can be applied to BSD but BD goes further: One can use BSD code with no obligation except admitting copyrights.
BSD code can ce used by everybody, GPL only by some. So I seemore freedom in BSD.
However I dont understand what impact on benchmarking has specific licensing?
How can BSD code that has been modified and incorporated into a proprietary software product be said to be “at liberty”?
Because the original BSD licensed code will always be available to the public. It’s simply with GPL programs/libraries developers are not free to link the source code into their commercial programs.
Users gain more freedom with the GPL, developers gain more freedome with the BSDL.
Apple would never use GPL licensing for this reason.
Apple uses KHTML, which is LGPL. It also bundles Samba, which is pure GPL.
Thanks to BSD licensing OS X is very nice desktop OS and linux desktop developers can learn from it.
The fact that OS X is a nice desktop has nothing to do with BSD. Aqua is not released under the BSD. KDE 3.x is a very nice desktop as well (especially the upcoming 3.2). I personally like it better than Mac OS X. It is entirely GPL.
BSD code can ce used by everybody, GPL only by some. So I seemore freedom in BSD.
Rubbish. GPL can be used by everybody, if by used you mean actually using the software (as opposed to using the source code tom include in your own app). BSD is better if, as a developer, you plan on making proprietary software.
I am not a developer. I am a user. As such, the GPL gives me more freedom because it ensures that the software I use will remain free. From a user point of view, the fact that BSD can be made un-free means less guarantee of freedom. Of course, this is different from a developer’s point of view.
However I dont understand what impact on benchmarking has specific licensing?
None whatsoever. Which goes to show that code published under the GPL is as capable as code published under the BSD, and as useful. Even though the Linux kernel is GPL, it is used by an increasing number of companies.
My point is that no license is better than another. Some give more freedom to users, others to developers, but ultimately it’s a question of choice (and the fact is, a lot of developers choose to license their software under the GPL, so it can’t be all that bad).
My beef is with the constant GPL-bashing I find on this site and others. Can’t we just agree that both license are good when compared to closed-source? I’m getting really sick of BSD users bashing the GPL, and Linux users bashing the BSDL.
It’s simply with GPL programs/libraries developers are not free to link the source code into their commercial programs.
You mean “proprietary” programs, right? You can have commercial GPL/BSD/whatever programs. Commercial != Proprietary.
Indeed, a developer may have less freedom with GPL source code than BSD, as he cannot “un-free” GPL code. That’s what I said earlier: GPL gives a bit more freedom to users, BSD gives a bit more freedom to developers. Both are good licenses.
I agree. This was very interesting. It shows several things.
It shows the general behavior of the algorithms that the systems used. Just be grateful that none of them exhibited O(n^2) behaviors.
It shows that most of the kibitzing over which system to use is pretty much moot for small, lightly loaded servers. And a vast majority of servers are lightly loaded.
It seems to me that the actual discrepancies are less important than the overall shape of the graph. The facts whether OS A is N microseconds faster or slower than OS B, when both are behaving O(1) is pretty much beyond nit picking.
The interesting “shortcuts” of FreeBSD are fascinating.
The graphic disparity of OpenBSD is telling as well.
Here’s how I read it all.
FreeBSD and Linux are mature enough that they’re focusing on performance over functionality for performance sake. They’re both functional in the basics of what the OS needs to do and now they’re speeding it up. Is software parlance, they’re past the “make it work” phase and on to the “make it fast” phase.
NetBSD is focused more on portability and ease of use of the source code, so they are much more concerned with the “make it work” aspect, and “make it work” as widely as possible.
OpenBSD are clearly not bothered by the side effects of their chosen routines. Clearly, they are using different implementations than any of the others, but within their sphere of priorites, these issues simply haven’t raised enough of a flag to get enough attention to have them remedied. Perhaps they are aware of these issues and simply haven’t felt it necessary to bother with them. However, the crashing of the kernel with too many processes is disturbing, I think. Kernels shouldn’t crash like that IMHO. Let fork(2) fail.
I think it would be interesting for the FreeBSD community to see both 4.9 and 5.1 compared to see how well it has improved.
Overall, an interesting article that shows some interesting results.
Linux is free as in free beer.
FreeBSD is free as in free speech.
You mean “proprietary” programs, right? You can have commercial GPL/BSD/whatever programs. Commercial != Proprietary.
I grow *so* tired of semantic arguments…
A GPL licensed commercial application is entirely pointless. The GPL *requires* that you make the source code available for the same cost or less than the binary version, and once the source code has been purchased by a single individual, it can be freely redistributed by everyone, thus eliminating the need for anyone to purchase a binary copy from you.
So please, let’s discuss things in the realm of reality instead of the realm of theoretically possibility…
I grow *so* tired of semantic arguments…
Then don’t start them… ๐
The GPL *requires* that you make the source code available for the same cost or less than the binary version, and once the source code has been purchased by a single individual, it can be freely redistributed by everyone, thus eliminating the need for anyone to purchase a binary copy from you.
The fact that someone can download it for free doesn’t mean you can’t sell it. Not only that, but you can package it with a manual, offer services and support, other kind of special offers, etc. And don’t forget that a lot of companies and/or governmental institutions will require purchased copies, if only for accounting purposes. It is entirely feasible (and in fact is current practice as companies such as RedHat, Mandrake, etc.) to commercialize a GPL product. Granted, you won’t make a killing, but you can still sell it as a commercial product.
I myself have bought Mandrake Linux boxed sets twice. This ain’t a “theoretical possibility”, but a cold, hard fact. I will probably buy Mandrake 10 when it comes out as well.
So please, don’t confuse your assumptions about how successful a commercialized GPL can be with reality.
Hmmm… did the client run on the same PC? If so, I would very much like to test Solaris (8). If it would only install… when I create a Solaris slice, it complains that “partitions overlap” while that clearly isn’t the case ๐
The other conclusion I can make, is that (for me, personally) for desktop use, the version of X is much much more important than kernel latencies or so. Debian and NetBSD feel slow for me because X 4.3 was the first version to have a better driver than Windows.
But maybe I can run a little test to compare Free-, NetBSD and Windows.
“A GPL licensed commercial application is entirely pointless.”
Pointless FOR WHAT. It just depends on the situation, interests, and so many other factors. There’s a lot more possible behind an inviduals imagination. You can’t state your sole theory on this is the only reality; because it’s simply not true. There are various ways to develop GPL software and still earn money and individual or commercial. Actually, several articles and books are written about this.
And indeed, propietary or non-free != commercial. Totally different. One is about free/speech, the other one is about free/money
Claiming the BSD license is more free than GPL, only regarding the license and possibilities, is shortsighted. Because that’s just not true in every situation. The freedom to use a machinegun to kill the world isn’t a freedom for others, and that’s reality as well. Freedom. It just depends… on how you view it. Both in society and in the software world…
OpenBSD Journal thread about the benchmarks: http://www.deadly.org/article.php3?sid=20031019083707
GPL – is a morale statement, it is about making absolutely certain that software will always remain free and therefore will not be locked up by evil powers. Kind of like a communist branch for free licenses. You MUST do the following, for your own good and the good of everyone else.
BSD – is simply stating that you are free to do whatever you want with the software, it can be locked up and hidden, displayed in a public forum, it can be used for good, used for evil, used for toasters, it’s up to you. Your decision.
GPL – is a morale statement, it is about making absolutely certain that software will always remain free and therefore will not be locked up by evil powers. Kind of like a communist branch for free licenses. You MUST do the following, for your own good and the good of everyone else.
Communist? How about you just not distribute my software I’ve released under the GPL, and everyone goes home happy? After all, that’s no more than you got with your store-bought software. Plus you got the freedom to use it for whatever purpose you wanted (no EULA), AND you got the source code with it to do whatever you want with it in-house. Sounds like a pretty damn good deal to me.
The very insinuation that my using the GPL is some sort of subversive anti-capitalist plot, is quite insulting. Why don’t you just leave it at “If you continue the development of this software on your own, share your changes just as the original software has been shared with you.” See? No red-scare rhetoric necessary. Just a simple application of the Golden Rule.
“The very insinuation that my using the GPL is some sort of subversive anti-capitalist plot, is quite insulting.”
Be insulted as much as you like, but THIS IS STALLMAN’S INTENTION.
I am not joking. It it stated in black and white in the GNU Manifesto. I direct you to read http://www.gnu.org/gnu/manifesto.html in full.
Stallman deliberately set out to push his own Communist agenda via the GPL after his “Ivory Tower” of early 1980’s MIT was destroyed when many of the programmers that worked along-side him left to form a company to sell software.
It’s ironic that Stallman is very much in an “I’m all right, Jack” position, having no family and in receipt of various grants that allow him a great deal of financial security.
It’s also ironic that the GPL doesn’t protect from “big business” in the way so many claim. Rather, it helps entrench big business.
Big business, such as IBM, can afford to exploit the GPL in order to sell product in a way that small businesses cannot. Conversely, small businesses have often taken advantage of the BSD license terms to innovate products that they would then sell – something clearly impossible under the GPL.
Look at how IBM uses the GPL to sell hardware and high-end software.
The other item I take issue with is people claiming that the BSDL does not match the “four freedoms” when it demonstrably does. It guarentees the freedom of the code. It does not guarentee the availability to *enhancements* of the code, but that is something entirely different. However, it does not stop anyone from making enhancements and releasing those changes – which is, indeed, what the freedoms state.
Anything which prevents these is no longer under the BSDL.
So, fundamentally, the choice of BSDL vs GPL is a political decision.
First, with the GPL there is an EULA, the GPL itself. Also you HAVE to give me the source code.
Second, you are reading WAY too much into a word.
communism
Com”mu*nism, n. [F. communisme, fr. commun common.]
A scheme of equalizing the social conditions of life; specifically, a scheme which contemplates the abolition of inequalities in the possession of property, as by distributing all wealth equally to all, or by holding all wealth in common for the equal use and advantage of all.
In other words, communal – belonging not to you, but to the community. Further, you would have no right to revoke that right from the community – as such it forever belongs wholly to the community.
I would like to see this expanded to include FreeBSD 4.9, Linux 2.6 and DragonFly as soon as they are all released. Perhaps Darwin as well.
Please, stop bitching about licenses. Whatever the theory, the practice is that most Linux distros (with some notable exceptions such as Slackware, Gentoo, and Debian) can only be downloaded after you have paid money to get them, while all versions of *BSD have always been free to download and will always stay that way. Just think about all the commercial Linux distros out there: SuSE, LindowsOS, RedHat, Mandrake, Xandros, Libranet, and so on… the list is endless. (See what distrowatch.com says in this week’s issue about free and commercial distros.)
Please remember that the touchstone in comparing any two theories is how they are applied in practice. I advocate communism in theory but capitalism in practice. ๐
I think socialism or social-democratic would be a better term to use then communism, given that the word is so emotionally loaded
anyway let’s stop with the semantics on licences and get back to the benchmark results ๐
Are the tests that your man used freely available in that case someone could always try running them this time using FreeBSD 4.9 and maybe Linux 2.2 (heck even 2.0) that way we’ll get a fairer picture of how they have improved.
I think you’re confusing “free as in beer” with “free as in speech”…nevermind that you can download Mandrake and RedHat without paying a dime.
Again, as it says right on the FSF’s web site, commercial != proprietary…
Sorry about the digression, I just feel that GPL takes away some freedom of choice.
Anyway, I don’t have the hardware to run these tests. I would love to see the following tested against each other:
NetBSD 1.53
NetBSD 1.61
OpenBSD 2.8
OpenBSD 3.3
FreeBSD 4.9
FreeBSD 5.2
Linux 2.4
Linux 2.6
Windows 2000
Windows 2003
Solaris 9 x86
Solaris 10 x86
UnixWare 7.13
Now that would truly be a test to end all tests!!
It all seemed well-written until he got to the conclusion. Recommending the OS that has the highest performance, for a server environment? Decommending poorly-performing OSes, while completely disregarding their other attributes (OpenBSD security, anyone?). Would he tow a cargo trailer with a Ferrari?
He fooled me into thinking he wasn’t an idiot, all the way to the conclusion. Fool me once, shame on me.
ILBT,
GG
Once again, someone screws up the car analogy. Ferraris are known for being high horsepower, relatively light weight cars with well tuned suspensions. Cars that tow well are chosen by a number of factors, including the amount of TORQUE the engine produces, not horsepower.
So, trivialities aside, there is no recommendation at the end for “best server.” The title of the study is “Scalable Network Programming”, not “Which OS rox0rz your boxers as a server.” The conclusion states the results of the scalability tests, and states which ones did the best, and which ones are better than the others. Not “choose this one for your server.”
Correct me if I’m wrong,
but most of the webservers around the world are using FreeBSD4.* and Linux 2.4.* ( AFAIK, though… ๐ )
So testing the 4.* and then comparing it to 2.4.* is a must,
in my opinion at least.
Once again, someone screws up the car analogy. Ferraris are known for being high horsepower, relatively light weight cars with well tuned suspensions. Cars that tow well are chosen by a number of factors, including the amount of TORQUE the engine produces, not horsepower.
Er… the mistake was in the moron’s conclusions. I was illustrating his error in my analogy. Since you found the error in the analogy, you agree with me. Thank you for your support, even though you weren’t bright enough to comprehend it.
ILBT
GG
If you haven’t seen it already the benchmarks page has been updated to include also NetBSD-CURRENT and FreeBSD 4.9-RC3.
— stelios