Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 15 Apr 1996 09:09:58 +0300 (EET DST)
From:      Linus Torvalds <torvalds@cs.Helsinki.FI>
To:        JULIAN Elischer <julian@ref.tfs.com>
Cc:        hackers@freebsd.org, linux-kernel@vger.rutgers.edu
Subject:   Re: Unices are created equal, but ...
Message-ID:  <Pine.LNX.3.91.960415083932.30002I-100000@linux.cs.Helsinki.FI>
In-Reply-To: <199604142055.NAA05263@ref.tfs.com>

next in thread | previous in thread | raw e-mail | index | archive | help


On Sun, 14 Apr 1996, JULIAN Elischer wrote:
> 
> Ok, here is my attempt at the missing information....

This is probably approaching being closer, but it's not really as 
clear-cut as even this.

Personally, I _want_ linux to be faster on everything, but when it comes 
to real life, I'd say that _any_ of the Free UNIXen are "fast enough". 
There is always going to be some differences in different areas, but with 
both groups being pretty performance-minded I don't really think we'll 
ever have any really noticeable differences in any "normal" circumstances.

> I would expect the following to be true between Linix 1.3.x and FreeBSD 2.0.5.
> category 1:--Linux faster in:
> 		context switch, including some system calls.
> 		possibly some program startup.
> 		possibly pipe code.
> 		possibly FP emulation.
> 		possibly FP exception handling.
> 		Any test that does a lot of filesystem meta-data manipulation.
> 		  e.g. file creation and deletion.

I can't really say much about it: I can't even claim to have benchmarked 
any *BSD machine. All the things you mention are "good" under linux, 
though, so I'd suspect that linux is at least on par with BSD in any of 
the above and may be faster.

On the other hand, Dyson tells me that the FreeBSD team has been 
optimizing lots of those things too, and I wouldn't be surprised if they 
are more or less at the same level as linux is..

Again, I don't think the speed makes a huge difference (a 10% difference 
looks huge in benchmarks, but has little meaning in real life unless 
either is 10% faster at _everything_)

> category 2:--FreeBSD 2.0.5 faster in:
>		Anything to do with networking

No longer true. These days it's "some things to do with networking", and 
while I suspect that BSD may have the edge here still, these days it's 
really the _edge_, not the whole blade ;-)

> 		Anything using a raw tape or disk device.

This may well be true. I'll be the first to admit that I don't really 
care for "raw devices". The only time I ever use the raw device is when 
fsck runs, and I couldn't care less about performance there (well, I 
could, but you get the idea).

Tapes I have no idea about. You may or may not be right.

> 		Any benchmark that loaded the system very heavily,
> 		  especially if it produced swapping.

The differences shouldn't be that large any more. The asynchronous 
swapping code and the swap deamon in newer linux kernels help performance 
under load. Again, I'm more inclined to think that one system may be 
better on some hardware, while the other might be better at something 
else. 

> 		Any benchmark that tested high-speed large sustained 
> 		  IO to files.

This has actually changed, and I suspect that's why Gerard did the 
benchmark in the first place. He's been working on that part of the code, 
and we're doing very well.

Unlike raw device accesses, I consider filesystem access speed very 
important, and I've mostly concentrated on getting good performance 
through good caching. Linux traditionally hasn't been as good in things 
where caches don't help (ie the cases you mention above), but that has 
improved a lot lately. Maybe somebody has access to FreeBSD-current and 
Linux-current on the same machine and can compare bonnie?

> category 3:--Linux and FreeBSD 2.0.5 about equivalent in:
> 		Anything that relies mostly on plain CPU
> 		with no or little OS involvement.
> 		(as both use the same cpu.)

I'd like to put a lot more here. In practice I don't think the 
differences are so large.

HOWEVER, despite the fact that I don't think it matters in real life, I'm 
all for people doing benchmarks, and crying out when one or the other is 
slower in something. Not because I think it makes much of a difference for 
normal users, but because it's good for development. It's a great way to 
motivate people to do better (show that the competition can do better at 
something, and you force us to try to improve ourselves).

I think _that_ is why benchmarks are important, not so much for testing 
which one is more "worthy"..

> >     If you are a FreeBSD-current user and if you have about the same 
> >     configuration as mine, can you run the old BYTE benchmark 
> >     and send to me your results?
> 
> I don't think it would be useful unless we had EXACTLY the same hardware..
> I have seen small differences make up to 50% difference..

Indeed. Even on the same machine the placement of the partitions can make 
a noticeable difference for disk tests, so benchmarking is not a trivial 
thing.. It might still be interesting to see some kind of benchmarking 
done, just for "some data" as opposed to "THE data".

If somebody wants to do benchmarking,I'd suggest using at least
 - lmbench (nice microbenchmark)
 - bonnie (reasonable disk performance benchmark)
 - webstone (or something similar. But use "apache" as the server, not 
   some braindead horror like NCSA).
 - ???

(the three mentioned should cover different areas, all very reasonable, 
but have I missed some important area?)

		Linus



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.LNX.3.91.960415083932.30002I-100000>