Hello, I am using OpenBSD on server since few years now, and I am very happy with it's easy maintenance and it's stability. I want to try on desktop, and I am having trouble. Everything is much slower than existing Linux system. For example, Firefox takes 3-5 seconds to start on Linux but ~10 seconds on OpenBSD on same machine! I tried compiler optimizations but those didn't help. Any suggestions? Please cc replies to me also as I am not on misc. Thanks. Fumione (Note: please do not tell me change to lighter window manager. I would like to use same environment or stay with Linux. Thanks.)
I have the same problem. The FFS doesn't seem to be as fast as ext2. CL<
> I have the same problem. The FFS doesn't seem to be as fast as ext2. Since OpenBSD sucks so hard it might be time to upgrade to something much more feature rich. I suggest Linux or OSX or Vista. Suggesting things is fun!
Most interestingly, after I moved from NetBSD to FreeBSD (performance-wise) on my Web cluster, I found that FreeBSD, being _faster_ than GNU/Linux, was not that much faster. Being totally pissed off of FreeBSDs and NetBSDs opinion about 'free' software and selling themselves as cheap whores to companies (read: deploying BLOB) I moved (again) to OpenBSD (on _all_ machines, not just on the crucial ones like firewalls etc). Surprise: Performance is on par. Security is much better. Karma is perfect :)
On the other hand I never lost data on ffs while a crashing linux box likes to eat up file systems. If you like to get ext2 speed just mount your filesystems async and hope for the best (that's what linux is doing).
Really? I have a completely different experience: I never managed to completely loose a filesystem, except by on OpenBSD... I've been using slackware linux on reiserfs and xfs for many years now, on my home PCs and company laptop (so, no real production environment) and I'm happy with both their speed and reliability. I caused many crashes, mostly by suddenly turning the PCs off in the middle of data transfer and I never lost a single file. Recently I decided to give OpenBSD a try, just to taste something different, and I'm really enthusiastic about it as firewall/proxy/DNS/DHCP server as well as desktop environment for my laptop. I really love the solidity and internal coherence of the system, its ease of management and the general impression of "good, old, solid computing for real men" that most current linux distributions completely lack (that's why I stick to slackware :-) ). The only shortcomings I found up to now are FFS fragility with respect to sudden poweroffs (I've already lost root filesystem twice, beyond fsck recovery capabilities, so I had to reinstall/restore from scratch), and a general sluggishness of X11 lacking DRI support. Probably it all depends on my lack of experience, so maybe my boxes are far from perfectly tuned up; I hope that spending more and more time tampering with OpenBSD and following this mailing list, I will eventually get proficient enough to tune up my systems as well as I got to do with linux :-) . Thank you all, byee Manuel ____________________________________________________________________________________ 8:00? 8:25? 8:40? Find a flick in no time with the Yahoo! Search movie showtime shortcut. http://tools.search.yahoo.com/shortcuts/#news
In epistula a Manuel Ravasio <manuelravasio@yahoo.com> die horaque Mon, interestingly, i just had an experience at a customer's site i want to share in this respect: they use *cough* GNU/Linux *cough*, RHEL. and XFS. XFS is pretty cool. however, they lost data. but it was not only about 'losing' data, it was about a hidden data loss. some data was lost, some not. some had weird ctime, some not. this is surely thanks to the most perfect implementation of an *opened* FS (here: XFS) by the GNU/Linux guys. pretty well done. what happened? a server had a backplane crash, an externally mounted XFS volume was shut down 'unclean'. although it was not that big (<1TByte), the desaster happened. in more than ten years of using IRIX (and thusly, XFS) i never lost one
That's what transactional filesystems like ext3 and reiserfs are for. I can highly recommend reiserfs. Glenn
If you like losing data ext3 and reiserfs work just fine. I manage to lose Linux installations pretty often by doing crazy things like rebooting.
Do you have some evidence to back up your pretty bold statement?
Yes but since these are production machines in a lab that requires clearance I can't share. We keep backups around for all these machines since every now and then we lose one for no good reason. In contrast the windows and openbsd machines we have deployed do not share this behavior. You are the one making bold statements based on a non representative sample. production server != home computing != desktop
<snip rest of long thread we have all read> Here is a quote from Theodore Tso (http://thunk.org/tytso/ for bio) a few months back in kerneltrap: <quote> The fact that reiserfs uses a single B-tree to store all of its data means that very entertaining things can happen if you lose a sector containing a high-level node in the tree. It's even more entertaining if you have image files (like initrd files) in reiserfs format stored in reiserfs, and you run the recovery program on the filesystem..... Yes, I know that reiserfs4 is alleged to fix this problem, but as far as I know it is still using a single unitary tree, with all of the pitfalls that this entails. Now, that being said, that by itself is not a reason not to decide not to include reseirfs4 into the mainline sources. (I might privately get amused when system administrators use reiserfs and then report massive data loss, but that's my own failure of chairty; I'm working on it.) For the technical reasons why resierfs4 hasn't been integrated, please see the mailing list archives. </quote> Enough said? I think that backs up Marco pretty well, given that Tso is a Linux kernel dev since '91. I used to be an IBM Linux instructor until a few years ago and we always warned about Reiser FS being too bleedin' edgy. Seems it hasn't Do we look <umop apisdn> from up over?
Instead of making vague, unprovable statements like that, we would like to see some solid benchmarks (bonnie, bonnie++), to back this up. Making such statements helps nobody.
Hi: Slowdowns for large applications for Firefox and Gimp can beaccompanied by the following warning: Gdk-WARNING**: shmget failed: error 28 (no space left on device) This can fixed by setting sysctl kern.shminfo.shmseg=128 sysctl kern.shminfo.shmall=32768 In /etc/sysctl.conf See: Re: dillo - Gdk-ERROR ? http://monkey.org/openbsd/archive/ports/0309/msg00164.html Another cause of the slowdowns mayy be that /etc/login.conf class "default" does not not allow enough files to be open at the same time. in /etc/login.conf change: :openfiles-cur=64:\ to :openfiles-cur=256:\ I have used OpenBSD as a desktop for several years and the slowdowns are not caused by a defect in the OS. In fact I use 4.0 on an ancient Pentium I with 96 MB of ram and it's load speed is satisfactory. -- Kind regards, Jonathan
I believe the standard response to any comparison "use Linux if you're
happy with it". Since you've already received that, here is an attempt
to do the question a little more justice. (However, it boils down to 'it
doesn't matter if FF loads a little slower, as long as it runs equally
fast').
Most modern Linux distributions optimize dynamic library load using
prelinking; 4.0 and later have a comparable idea implemented
('prebind'), but in a way that does not interfere with OpenBSD's
security features. This is not enabled by default (I'm not sure why not,
and would be very grateful if anybody would tell me, BTW), but can be
enabled using `ldconfig -P /usr/bin /usr/sbin /usr/local/bin
/usr/local/sbin /usr/X11R6/bin'. This should result in a noticeable
speed increase, especially on programs with lots of loaded libraries -
and look in /usr/local/mozilla-firefox to see that FF does have 'lots of
loaded libraries'!
Of course, it would be a good idea to know why it's not the default
first. Also note that, if I remember correctly, prebind won't help if
you use a nonstandard LD_LIBRARY_PATH, as FF does... so the command
listed before is likely to work for just about every *other* program.
Another aspect is that Linux is much more aggressive in caching data
from disk; if the amount of data read, the amount of work done in
between, and the amount of RAM is such that Linux can get most data from
its memory cache while OpenBSD has to read most of it from disk, Linux
will be a *lot* faster. Of course, you would only see this effect if you
started Firefox twice without doing much in between.
Both of those could explain why FF loads slower. If either of those is
the big culprit, though, FF should run just as fast (slow) as it ever
did, and since you're not likely to start it that often, I'd be inclined
to say it isn't that big an issue.
If a comparable slowdown is found in running FF, that would be a
problem. There are many variables there, of course... a dmesg might be
helpful, for insta...I would like to point out here that the idea of optimization is that an equivalent code that executes faster is produced. Optimizations don't permit generating code that is not equivalent, unless specifically stated in the flag description (-ffast-math). It's therefore not the responsibility of the programmer to check whether the result of optimization is correct. Therefore it's not the optimizations that are source of bugs, but bugs in GCC.
Good thing we're not just programmers, but actually developers. It's our job to make system that works, not just write code. //art
But if you write a program and the user finds it full of bugs, are they going to care that you can say that it's GCC's fault? The burden falls on the developers to make code that works, including working around problems in the compiler. Sad, but true. -- Darrin Chandler | Phoenix BSD Users Group dwchandler@stilyagin.com | http://bsd.phoenix.az.us/ http://www.stilyagin.com/darrin/ |
We can analogically use this argument for ocassional errors in memory, too. If I write a program and the user finds it crashing all the time, are they going to care that you can say that their hardware may be unstable? OpenBSD then should be written with Hamming, Golay, or Reed-Solomon codes in all the internal structures, to automatically recover from flipped bits in data structures. Similar protection should be done to the code. The code should be periodically CRC-ed and the process image snapshotted. If it were revealed the code is corrupted, a rollback would be done and the process restarted.
"We" can, but "we" won't. Yes, the GCC bugs should be fixed. Yes, it's important to communicate with the GCC people that -O2 breaks things sometimes. This is a separate issue from producing code that works right in the real world, which is where MY code has to run. If there are memory errors nothing else will run, either. If I report an error, do I sit around and not write code until it's fixed? Or do I continue to write broken code and tell the users it's not my fault? You're being stupid arguing things like that. How many more people are going to have to tell you? -- Darrin Chandler | Phoenix BSD Users Group dwchandler@stilyagin.com | http://bsd.phoenix.az.us/ http://www.stilyagin.com/darrin/ |
Yeah but see, you can try it on different hardware and show that it works. GCC is the only option for compiling we've got, so your analogy What do you want?? You must be being sarcastic in some of these posts but I can't tell which. -Nick
When I write a program then I specify the language - say ISO/IEC 9899:1999. If the compiler is buggy then it doesn't conform to ISO/IEC 9899:1999 - the compiled program behaviour breaches the ISO/IEC 9899:1999 spec. Then it's the user's problem that he compiled with a compiler that doesn't meet requirements I clearly stated.
Can you please try to loudly say: "I think, therefore I am"? //art
In epistula a Karel Kulhavy <clock@twibright.com> die horaque Mon, 19 so, it's not the rain that makes you wet, but the water, right? (geeeees)
ion whips a "giraffe's ass with a belt from a balcony" [0]. [0] wesley willis ( http://en.wikipedia.org/wiki/Wesley_Willis ) cheers,
On Sat, 17 Feb 2007 22:06:43 +0100 Joachim Schipper <j.schipper@math.uu.nl> wrote: Since prebind has already been explained in detail, I want to add that does indeed work, but if you use it on your ports it will invalidate all of the hashes used by pkg_add (which is most likely one of the issues theo mentioned). With prebinding my firefox starts in 4 seconds We're all hoping for UBC to come back in a working form, but hopefully some are doing the actual work :) If your box has memory to spare it will infact load firefox a lot faster the second time, if it still has the libraries cached in memory. A fixed size of memory is reserved for filesystem caching. What linux does (and UBC) is remove this fixed limit and let you use all your On last thing that might add to openbsd's startup overhead is the aggresive security stance. I don't know if library randomization has anything to do with it, but w^x & propolice have been stated to give a 5% to 10% performance impact in certain cases. I've noticed this mostly in applications that map & unmap a lot of memory. I'm using openbsd on my systems, desktops & laptops included, since release 2.7. It might not be equal to a current linux kernel performance wise, but it's not lagging that much behind. I'll take the cleanness, easy of use & stability any day over a 10% performance difference. And that's not even going into the free code debate, it's hard to get more free than openbsd. // nick
Oh really, "it has been stated". By who? Overall, I doubt that all of our security technologies add more than about 2% of a performance hit. Even a 'make build' on most architectures did not add that. I think you need to go back and read my slides again. Spreading lies about 5-10% performance hits is just not kind to our efforts.
On Sun, 18 Feb 2007 10:03:37 -0700 I've reread the slides again. I stand corrected when it comes to w^x & propolice, but I'm still not in the clear when it comes to randomized malloc & mmap. The slides from bsdcan 2004 state: "still failry expensive", the slides from opencon 2005 no longer mention anything about performance. // nick
Well, we never measured it again. Because we didn't feel any slowdown or feel any effect. Otto did speed something up a few weeks ago, but these are totally minor effects, honestly. But since we didn't bother measuring it, we should probably all assume a 10% slowdown. That's easier. It explains everything, including spring coming earlier every year. In the future, if you don't measure it yourself, please just withhold comment.
The pkg tree is not yet ready to do the right thing for this, heck, even the base is not fully prepared for this to be on by default. Prebind appends an information block to the end of libraries, and there are some more details which need to be considered, and handled. Furthermore, anytime you did a 'make build' of your system, the prebind information changes in that information block, and when any of it is invalid, it ignored, and you are right back in the un-optimized mode. That's safe, and fine, but there are issues. Like everything else in OpenBSD, we make it available early, and then we turn it on when we are confident. You don't even need to know the above details -- just trust we are making the right decisions.
Okay, that's about what I expected. Thanks! And, frankly, if I didn't have a lot of confidence in you guys making the right decisions, I wouldn't be running OpenBSD. I *do* like understanding how stuff works, though. Joachim
Now that's what I call a helpful answer Jeff
You can just stay with linux. Really, we won't mind. Take care, jdq
| Matthew Wilcox | [PATCH] Fix boot-time hang on G31/G33 PC |
| Vu Pham | Re: [Scst-devel] Integration of SCST in the mainstream Linux kernel |
| Greg Kroah-Hartman | [PATCH 004/196] Chinese: add translation of SubmittingPatches |
| Rafael J. Wysocki | [Bug #11799] xorg can not start up with stolen memory |
git: | |
| Li Frank-B20596 | why not TortoiseGit |
| Jon Smirl | ! [rejected] master -> master (non-fast forward) |
| Junio C Hamano | Re: If you would write git from scratch now, what would you change? |
| Wincent Colaiuta | Possible to make a totally empty repository for remote access? |
| Richard Stallman | Real men don't attack straw men |
| Chris | Prolific USB-Serial Controller |
| Douglas A. Tutty | OBSD's perspective on SELinux |
| Nick Guenther | Re: how to clear dmesg outpout |
| Volker Armin Hemmann | build error with 2.6.27.6+reiser4+ehci-hub patch. ERROR: "mii_ethtool_gset" [drive... |
| Wenji Wu | A Linux TCP SACK Question |
| Evgeniy Polyakov | [resend take 2 0/4] Distributed storage. |
| YOSHIFUJI Hideaki / | [GIT PULL] [IPV6] COMPAT: Fix SSM applications on 64bit kernels. |
