Slashdot Log In
OpenBSD SMP In The Works
Posted by
timothy
on Mon Dec 09, 2002 05:19 PM
from the open-as-in-sights dept.
from the open-as-in-sights dept.
Cajal writes "Four students at the University of Waterloo are working to add SMP support to OpenBSD as part of the Spinlocks project. More information is available in a story
at the OpenBSD Journal's site. They expect to have an initial working MP kernel in January."
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
The problem with OpenBSD.. (Score:2, Offtopic)
Re:The problem with OpenBSD.. (Score:5, Insightful)
You can always get the latest release by FTP.
So why don't you just buy the current release now.
-jfedor
Parent
Re:The problem with OpenBSD.. (Score:3, Informative)
But on the subject, the chances are slim to none that SMP will be stable and secure enough that it will be included in the next release, so you don't need to procrastinate this time. I haven't yet heard of major improvements fore 3.3 (except the altq & pf merge) so it will be mostly bug-fixes, and performance improvements.
Re:The problem with OpenBSD.. (Score:5, Informative)
No.
Perhaps you are confused by this [openbsd.org].
Why would you purchase a set of discs to perform multiple installs when OpenBSD developers recommend against using a static copy?
They don't. OpenBSD releases come at regular 6 months intervals (3.2 was a month early). That's what you should be using. You can use the snapshots or even the current CVS if you feel brave.
Sure, I can understand buying copies to support OpenBSD. I buy Redhat for the same reason, it's more principle than the actual material in the box.
You are correct. There's a slight difference, though, OpenBSD is not trying to turn a profit, just cover the development costs.
-jfedor
Parent
Wow! (Score:5, Funny)
Re:Wow! (Score:5, Insightful)
Each has its niche, and while some of those niches wane over time (e.g. SCO, IRIX, DG/UX), others flourish (Linux, FreeBSD, Solaris) and that's a good thing. They continue to flow into the containers that they define, rather than having to attack eachother as many products do.
Parent
Great news (Score:4, Insightful)
But I ask here, as an honest interested person, why one would wait until SMP is correctly and efficiently implemented into OpenBSD when they could simply use any old recent version of Windows or Linux on SMP hardware to get symmetric multiprocessor support for a high-load server?
I understand that Research -> Products -> Corporate $$$, but is this perhaps too little too late for OpenBSD?
Re:Great news (Score:5, Informative)
"Only one remote hole in the default install, in more than 7 years!"
So they all have their uses, Linux, FreeBSD, OpenBSD, and NetBSD. =) Live together, work together, don't kill each other.
Parent
Re:Great news (Score:4, Funny)
Parent
Re:Great news (Score:5, Funny)
What puzzles me is how they jumped [openbsd.org] from "nearly 6 years" to "more than 7 years" in less than a year.
-jfedor
Parent
Re:Great news (Score:5, Insightful)
Parent
Re:Great news (Score:4, Insightful)
Because you like OpenBSD and would like to help them test the SMP-enabled version so that one day it runs properly?
What's an "old recent version of Windows", BTW?
-jfedor
Parent
Maybe now.. (Score:2, Interesting)
While security takes precedence over performance in my book, there are definitely some things that need the performance of FreeBSD.
This is one feature i've been looking forward to playing with (not NEEDING) for a while, i can't wait to try it when it's available somewhere.
--Fuzz
Sweet Mother of Blowfish (Score:3, Funny)
It's about friggin time they did... (Score:5, Informative)
The last time I spoke to Theo in person, he wasn't too keen on SMP. That wasn't too long ago.
Re:It's about friggin time they did... (Score:4, Interesting)
OTOH, it may be that SMP code is more difficult to audit, and that this is the reason it won't make it in. Remember, SMP allows for the possibility of race conditions within the kernel itself, which would be a nightmare to validate for security.
Parent
Re:It's about friggin time they did... (Score:4, Insightful)
It might. Even if Theo doesn't accept these patches, the patches will still be available. I just hope they keep maintaining them and keep them up to date if Theo says no for any reason.
OTOH, it may be that SMP code is more difficult to audit, and that this is the reason it won't make it in. Remember, SMP allows for the possibility of race conditions within the kernel itself, which would be a nightmare to validate for security.
If Theo would deny this work, it would probably be on those grounds. It was indeed one of the reasons he mentioned to me.
The most likely place for race conditions to occur on SMP systems is with threading. I have yet to see a totally solid threading implementation that is totally devoid of race conditions of any kind wrt locking/freeing/semaphores/etc. Usually kernel developers solve most of the problems by passing one big lock around (like linux does, and FreeBSD (ever heard of Giant?))
All in all good news that these guys are working on it indeed. My main concern is seeing this project die because it has the chance of being shot down by Theo. I really hope they persist in pushing Theo to accept it. I also hope they have a lot of patience while dealing with Theo, he's also not the easiest to get along with :)
Parent
Re:It's about friggin time they did... (Score:3, Informative)
I guess they can forget about... (Score:3, Interesting)
Microsoft has been raiding the University of Waterloo for programmers for years now.
Re:I guess they can forget about... (Score:3, Informative)
XP and Linux comparisons are pointless (Score:5, Interesting)
The conventional wisdom that an operating system should be judged according to it's bells and whistles is what's wrong with the software industry. An OS should be judged by two things: Does it do the job I require of it, and does it do it well?
There are many many jobs that do not require SMP. There are many many jobs being done on SMP boxes that do not require SMP. As the price of processors has diminished, SMP is just a cool thing to buy. I'd be willing to put money down saying that 75% of the SMP boxes out there aren't needed (if that was measurable).
So, if you want to judge your OS based on features you don't need, then go for it. I use OpenBSD because it is the best choice for that particular need. If you want to assume that one OS is the Uber-OS because of the back panel of the box, then go for it. I'll assume a particular OS is best for the task at hand, and go with that.
I'm not part of the OpenBSD project (nor do I play one on TV), but one of the central points behind it is that they don't put in things unless they are needed. So far it doesn't seem like SMP has been justified in the great scheme of things (no surprise given the actual need in the wild). I'd much rather have them working on things I'm going to be using instead of evaluating other products based on things I won't.
Re:XP and Linux comparisons are pointless (Score:2)
"I've been using OpenBSD in several mission critical networking roles for 3 years now..." blah blah blah...
What are you using it for, and how reliable is it for networking? Uptime?
Re:XP and Linux comparisons are pointless (Score:2, Informative)
Re:XP and Linux comparisons are pointless (Score:3, Interesting)
Now, SMP is not necessarily something people "start needing"; you don't usually realize one day that "gee, now I really need SMP". For many things it isn't strictly required, like you say -- after all, most systems only scale up decently to 4- or perhaps 8-way systems, and common rule of thum is that you get about sqrt(num_procs) output (assuming you get enough CPU load for all processors)... and so you can same amount of work done by getting twice as fast CPU (instead of 4-way SMP system).
However, having SMP capability as an option is a Good Thing. For servers it allows nice high-end scalability (esp. with Sun boxes, E10K and co. wouldn't rock if it wasn't their SMP-scalability coupled with kickass I/O.. but those beast scale well past 8 CPUs). For desktop systems it allows for better interactivity (especially on traditional unix[ish] system that have batch-job oriented scheduling), smoother UI.
Hacking on PowerBooks (Score:3, Informative)
Re:Hacking on PowerBooks (Score:2)
A long wait... (Score:5, Informative)
Very smart... (Score:4, Interesting)
OpenBSD is a very promising OS, and SMP support will finally let it play with the big boys in the free *nix playground :)
Re:Very smart... (Score:4, Interesting)
OpenBSD may have been branched from NetBSD, but there is practically no resemblance left anymore. Both, in source code and userland, there have been so many changes that the differences between Net and Open are bigger than the difference between either of them and FreeBSD.
I applaud your attempt to counter the accusation that OpenBSD is "less active" than Net, but you've got it a little wrong. The userland between the three *BSDs is very similar, and the kernels have similar subsystem layouts. Without this similarity, things like softdeps, systrace and IPv6 wouldn't have percolated so quickly into all three. Finally, note that this new OpenBSD SMP work builds on Bill Studenmunds NetBSD code.
Chris
Parent
Uses of SMP? (Score:2)
Re:Uses of SMP? (Score:3)
Re:Uses of SMP? (Score:3, Informative)
Re:Uses of SMP? (Score:4, Informative)
Anyway anything that is relatively (or entirely) cpu-bound and involves lots of processes or threads will be sped up significantly. Also one process doesn't tend to monopolize your processor so badly.
Parent
This would be nice (Score:5, Interesting)
It's strange how things like this end up changing would would have been. Do it right the first time, because if it gets adopted, and it wasn't done right, efforts will be diluted.
I'm glad to see it's happening though. At least somebody's throwing some brainpower at it rather than waiting around for Theo & friends. (no fault to Theo, I know SMP is "in the works" - OpenBSD is secure, first and foremost. That's what I, and many others, care about most. Kudos to you and your team on this! You have a highly-regarded, ultra secure OS that has kept many cracker-types and script-kiddies at bay for many years. You have saved many people many thousands or millions of dollars with the protection your software project has provided. You have given nothing to the headache medicine providers of the IT industry.)
One more processor for my dual-capable Sun SS20 and I'll have a grand-ole time playing with this. Just too bad it comes with only a single 10-speed ethernet port. Anybody know about S-bus fast ethernet cards?
To these brave deveopers: Way to go! Thanks for getting the ball rolling and best of luck with your project (and dealing with the publicity! :)
Note: Announcement Not From OpenBSD.org (Score:3, Insightful)
Re:Note: Announcement Not From OpenBSD.org (Score:5, Informative)
Parent
Re:'ehh (Score:2, Informative)
I guess somebody cares now....
Re:'ehh (Score:3, Informative)
The problem is, I don't know how much of OpenBSD's kernel really relies on the assumption that it'll only ever run on one CPU and it may take some time before OpenBSD becomes as stable and secure as it needs to be.
OpenBSD is designed for an "edge server" environment, where scalability isn't as important as security.
ipv6 (Score:2)
However, the crack about ipv6 is stupid. OpenBSD has had a working ipv6 stack for a long time (they were first OS to ship with an IPsec stack at all). Get your facts straight.
Re:Hooray! (Score:4, Informative)
Parent
Re:Hooray! (Score:3, Interesting)
In addition to just making sure the kernel has it right, you've got to make sure that it's not going to open up any holes in the userspace too.
Re:Hooray! (Score:4, Insightful)
Troll.
OpenBSD has had IPv6 since version 2.7 out in June 2000. [openbsd.org]
And for the record, FreeBSD has had IPv6 since March, 2000, [freebsd.org] version 4.0
And let's not forget who brought you OpenSSH [openbsd.org].
SMP isn't the top priority. Giving up stability and security for the latest and greatest features are not what everyone wants. A friend of mine complained about FreeBSD not having good SMP support, I asked him if he had an SMP machine, he said "No." I hope that is enough to illustrate my point.
Sorry to go off on this, but mod the parent down if you mod me down please. People always trounce on any of the BSD's while praising Linux here.
Hear that? That's my karma in the toilet. Flush.
Parent
Re:Waterloo? (Score:2, Informative)
Sounds like you've got some issues, dude.
Your comment is amusing since as a UW CS student, I don't have a Windows account. In fact, last I checked as an upper year student I'm not allowed to have Windows account, unless it's required by a specific course (statistics courses sometimes require windows accounts for matlab, for example).
Introductory programming courses are taught on Macs and Windows boxes, but almost everybody I know participates (as time allows) in free software projects; hell, half of the people I know are Debian developers.
So why don't you stick to things you know (i.e., nothing) and take some of this shut the fuck up.
Re:Waterloo? (Score:4, Informative)
Which apparently you don't.
the versions of OpenBSD with SMP support will require a Windows XP activation key...
Or maybe they figured out a way to port OpenBSd to Windows. Or something. Waterloo?
I assume you're referring to the stories from several months ago about a proposed deal where UW's Computer and Electrical Engineering department would, as part of a larger research sponsorship deal with MS, agree to make C# the language used in a first year class for CompEng students. There was a huge outcry against this by most CS and CompEng students and profs. Also, note that the School of Computer Science, in the Faculty of Mathematics, had nothing to do with this deal.
It is my impression that there are many UW students who use or contribute to Open Source projects. Profs are more than willing to make an occasional joke in class at Microsoft's expense. And most CS students (I can't speak for CompEngers) don't touch any MS products for programming projects past first year, by far preferring to use the provided unix labs.
Do I think the CompEng department's decision regarding C# bad? Very much so. But as I understand it, this decision was made by a few key people who stretched their authority, when really they should have consulted with more people. In fact, Engineering profs have called UW administration on this decision, leading to a decision that before the MS deal can be finalized, it must be approved by "the Electrical and Computer Engineering Department Program Committee, Faculty of Engineering Admissions Committee, Faculty of Engineering Academic Committee, Faculty of Engineering Undergraduate Studies Committee, Year 1 Implementation Committee, Senate Undergraduate Council, UW Registrar's Office and the senate as required by UW policy and practice." This, in my opinion, effectively has killed the deal. See this article [www.caut.ca] for more about this. [Note that the article implies that the proposed MS C# deal would have affected all first year programming classes. This is untrue: only first year CompEng classes would have been affected; CS students would have been fine.]
The very reason that this decision was such as big deal at UW is that it goes so very much against the prevalent attitude there. And the very large amount of negative feedback they got from UW students and profs in the CompEng and CS departments should ensure that something like this doesn't happen again at UW.
Parent
Re:It just goes to show (Score:3, Funny)
I believe that should be: "Those who do not understand Unix are condemned to reinvent it, poorly." -- Henry Spencer
Or maybe: "NT is a weak form of Unix like a donut is a weak form of a particle accelerator." -- MBCook
Re:Openbsd (Score:2, Insightful)
Yes, one(1!) remote hole in the default install, in more than 7 years.
If Microsoft could boast with this they would spend the equivalent of a small country's GNP on letting you damned well know about it.
If Linux could boast with this then Microsoft wouldn't have that small country's GNP to spend, since everybody would be running Linux instead.
If you by "always behind" mean that Doom 3 can't be run on OBSD then yes, you are correct on that too.
OpenBSD was designed to be a secure server, even with default install. Adding SMP-support have never been a priority in part, I think, because of the inherent security issues that arise from such a implementation. I'm sure there are other reasons as well, none of them beeing that they never got around to implementing it.
So are we agreed then, OpenBSD is always behind, and unsecure?
I thought so. =)
Re:Not to be trollish.... (Score:5, Informative)
NetBSD was more focused on portability. They were aimed at the embeded market (which Wasabi systems is in business in) where there isn't SMP. When Theo forked OpenBSD off of NetBSD they still didn't have it and it still wasn't a priority. Now there is more interest in it, especially now that SMP hardware is becoming so cheap.
Parent
Re:a bsd question (Score:4, Insightful)
That said, there is a lot of code sharing. The USB core is exactly the same in both Net and Free, probably OpenBSD as well. systrace was originally slated for NetBSD, ended up in Open. 5.0 is getting a new
In some respects, there's more sharing in BSD than in some of the Linux distros. Since all the owners of the BSDs are essentially non-commercial, there's no real incentive to make proprietary stuff. In some situations, the BSD license is easier to share stuff, but it really doesn't in this case - if they were all GPL they could share things.
I understand what you're saying, that it diverts attention and resources. But you also have to realize they pick up thing as well. There's some cross pollination. I believe the SMP stuff is kind of taken from BSDi, if not the actual code then at least the general idea.
The other thing is "one-size fits all" gives you a huge XXXXL product. If all the things went into just one or the other, it would be pretty bloated. The focus of FreeBSD (optimized for Intel) is in respects incompatible with NetBSD (ultra-portability). Ask anyone who's worked on gcc about the problems of optimizing portable code.
Parent
Scissors, Paper, Stone (Score:3, Insightful)
Different approaches, different world views. It's hard to tell which is better (and why) *after* it's been done, much less *before* it's been done.
I don't think the duplication of effort is all that wasteful. Image the state of Linux and FreeBSD security if OpenBSD did not exist.
Re:haha I knew that openBSD was dying.... (Score:3, Insightful)
I worked for an "internet incubator" that had huge farms of 8 and 4 way Compaq servers running MS-SQL Server 7. One CPU would be pegged at near 100%, while the other processors on the machine would be near idle. With Oracle, the situation was some better, but again less than 25% speedup for 2nd processor, and less than 25% of 25% for 3rd, etc.
Maybe YOU need to grow up, and actually test the benefits of SMP rather than coo and goo-goo over it like some shiny toy.