NetBSD Focuses On Scalability 114
An anonymous reader writes "Felix von Leitner recently performed some benchmarks (previous story) for a talk about scalable network programming he held at Linux Kongress 2003. The winners in this scalability lineup were Linux and FreeBSD 5, followed by NetBSD and finally OpenBSD.
What's interesting is that in only two weeks time the NetBSD team made dramatic improvements. Felix performed his benchmarks again and the results are nothing short of astonishing. NetBSD now has better scalability than FreeBSD." Read on for a list of improvements.
the submitter lists these changes:
- socket: previously O(n), now O(1).
- bind: greatly improved, but still O(n). Much less steep, though.
- fork: a modest O(n) for dynamically linked programs, O(1) for statically linked.
- mmap: a bad O(n) before, now O(1) with a small O(n) shadow.
- touch after mmap: a bad strange graph in 1.6.1, a modest O(n) a week ago, now O(1).
- http request latency: previously O(n), now O(1)
This is a very good job from the NetBSD team! I hope to see more benchmarks and more improvement for a great OS like NetBSD."
Re:Nice (Score:3, Informative)
Target (Score:2, Interesting)
Colour me cynical, but just maybe the improvements are targeted to produce a better benchmark rather than broader scalability.
Tell me I'm wrong.
Re:Target (Score:5, Insightful)
Benchmarks are great tools to use for improving performance, and as long as you don't have to cheat to do better, (like some major video card companies who shall remain nameless) improving your scores on a good benchmark largely equates to improving performance across a whole host of applications.
If you'll remember, the same thing happened with the Netcraft debacle; performance deficiencies in Linux wrt. NT were highlighted, and fixed, and Linux is the better for it, with even faster webserving, and a better TCP/IP stack. I don't care about the alleged reasons, I care about the positive results.
Re:Target (Score:2, Insightful)
Re:Target (Score:4, Insightful)
NetBSD's team is scary good. There are some advantages to keeping a tight core development team, and if the team is good, one of them is quality.
In my experience with NetBSD, when they do something, they do it right.
Let me put it to you this way.
Say there was this huge alien spaceship coming from outer space to blow up the white house and use us as food. We'd need to send a rag-tag group of crazy operating system geniuses up into space in a rocket to intercept them and upload a virus into their system (this would no doubt piss off the stiff-necks in the military, but the orders would no doubt come from up top). That rag-tag group of crazy OS geniuses would be the NetBSD team.
Re:Target (Score:2)
For example, how long before the other BSDs (and even Linux) pick up any applicable parts of the improvements the NetBSD team made here? Even though they are different teams and projects, they still help each other out almost as much as being on the same project does.
Re:Target (Score:1)
TYPO!!! (Score:1)
>>>
As for NetBSD, I plotted the graphs for 4.9 against the graphs for 5.1-CURRENT. Here are the results:
NetBSD is very cool (Score:5, Interesting)
Anyway if you've never tried NetBSD, I think you should. At least get it installed and compile a kernel. It's a good learning experience. Plus it's been ported to every fsking hardware platform ever (just about.)
You should try plan9's (Score:2, Interesting)
Re:NetBSD is very cool (Score:2, Interesting)
That said, NetBSD is very clean and elegant, and is persistently and carefully maintained. If you want an operating system that you can sit down and really understand and modify, I think you'd be very, very happy with NetBSD.
YMMV
Re:NetBSD is very cool (Score:2)
Why would your teacher choose QNX over Linux? Linux is free and easy to install. With the Linux source code, students can study (and play with) real operating system internals. Did QNX make a "donation" to your school or something?
Re:NetBSD is very cool (Score:2)
In an OS course, you want a clean OS so you can stick to the theory. Linux is HUGE in comparison, and it is not a clean design.
It's about actually having a good chance of understanding a significant portion of the OS, not wading through performance hacks.
Re:NetBSD is very cool (Score:2)
Re:NetBSD is very cool (Score:2)
Not Bad for a Dying OS :-) (Score:4, Insightful)
I run GNU on my machines. I'm not picky about kernels.
What? (Score:4, Interesting)
What the hell is this supposed to mean? Either you are O(1) or you are O(n) - what is "small O(n) shadow" mean?
Re:What? (Score:2)
I'm guessing.
Re:What? (Score:1)
Well, perhaps he means that the running time is O(n), where n is the number of times the test is run ;-)
I agree, the statement is unclear as it stands.
Re:What? (Score:4, Informative)
Re:What? (Score:2)
I don't care if 99% of the time you are O(1), and 1% of the time you are O(n) - you are O(n).
The whole idea of Big-O notation is that, if runtime is F(n), then as n goes to infinity what is the primary part of F(n) - the part that contributes the most to the operation.
So let's say it correctly - the behavior is still O(n). It may be faster than it was, but it is still O(n). C
big doh notation (Score:5, Interesting)
O notation is overrated. Sorting is always described as O(N*log N), but for any practical architecture using a radix sort with L1/L2 cache locality, replace log N with the constant factor of 3 or 4. A million cache local buckets can radix sort 10^30 elements in 3 log N time.
Using all of main memory as your bucket store, I'd guess you could sort every proton in the known universe in 8 passes. So what exactly is that log N term trying to tell us?
Re:What? (Score:1)
Re:What? (Score:3, Informative)
Nope, you act like you know what you're talking about, but you're forgetting about a fun thing called amortization. For example, if you write a stack, and your push operation takes N operations on the Nth push (when you increase your array, and it can't be on the first push), then you can still end up with a constant push time even though not every push is constant.
Re:What? (Score:2)
Take a look at the graph again, really. It's pretty clear that there is a great improvement with respect to the test, but that's about it. In absence of traditional statistical analysis, all we have is some nice pictures, with conclusions drawn upon the chosen scales of axes (they are very different) and the drawing program used. Additional summarising statistics are lacking,
Now, compare the scales at
Re:What? (Score:1)
Re:What? (Score:1)
Re:What? (Score:1)
All in all, from the plot alone, I would say NetBSD has done some great improvements.
Re:What? (Score:1)
Re:What? (Score:1, Informative)
Trying this out (Score:1)
Re:Trying this out (Score:3, Funny)
Re:Trying this out (Score:2)
I should say RTFA, but he originally tested 1.6.1, which performed well but not as well as FreeBSD-CURRENT. Then he tested NetBSD-CURRENT, then, after talking to the NetBSD team, he tested a later version of NetBSD-CURRENT. Not quite like testing a release, but he tested -CURRENT for FreeBSD and Open
Felix von Leitner "papers" ... cum grane salis (Score:4, Interesting)
Don't use OpenBSD for network servers.
If you are using OpenBSD, you should move away now.
http://news.netcraft.com/archives/2003/11/02/secu
Re:Felix von Leitner "papers" ... cum grane salis (Score:1)
yea yea, ihbt, blah blah
Re:Felix von Leitner "papers" ... cum grane salis (Score:1)
anon coward (Score:1)
little question (Score:2)
Since the author actually reads the slashdot comments, I've a little question.
I'm no real kernel hacker, so I could be totally off, but:
Are all OSes located on the same part of the (same) HD? This because linear performance probably scales linear with the cylinder the OS partitions is on.
Great... running it on my VAX (Score:2, Interesting)
NetBSD is starting (not yet, but close) to become dangerously close to the precipice of being Bloatware(*)
First on my list to replace is GCC which has ballooned in size way way too much for the "features" that have been recently included.
TDz.
(*Bloatware is a TM of Microsoft corp)
Re:Great... running it on my VAX (Score:1)
a new pda can run circles around your computer.
don't be ghetto, man. Get a job and get a new puter.
Open Source, +1 RedHat (Score:1, Troll)
Re:Failure (Score:1)
Sometimes, its just too easy:
http://news.netcraft.com/archives/2003/11/
Choke on it and die.