Linked by Thom Holwerda on Sun 16th Mar 2008 21:51 UTC, submitted by Oliver
Benchmarks "In May 2007 I ran some benchmarks of Dragonfly 1.8 to evaluate progress of its SMP implementation, which was the original focus of the project when it launched in 2003 and is still widely believed to be an area in which they had made concrete progress. This was part of a larger cross-OS multiprocessor performance evaluation comparing improvements in FreeBSD to Linux, NetBSD and other operating systems. The 2007 results showed essentially no performance increase from multiple processors on dragonfly 1.8, in contrast to the performance of FreeBSD 7.0 which scaled to 8 CPUs on the benchmark. Recently Dragonfly 1.12 was released, and the question was raised on the dragonfly-users mailing list of how well the OS performs after a further year of development. I performed several benchmarks to study this question."
Thread beginning with comment 305448
To read all comments associated with this story, please click here.
Don T. Bothers
Member since:
2006-03-15

I remember Matthew Dillon was pretty harsh and insulting with how the FreeBSD Project was trying to solve the BSD SMP problem. I don't know if in the future Dragonfly will scale better than FreeBSD however two things are now certain. 1) As witnessed by the very promising scalability results we are now seeing, the FreeBSD Project was right to push forward and play it safe. 2) As witnessed by the utter lack of progress of SMP scalability in DragonflyBSD, while the road the FreeBSD project took was hard, the road Matthew Dillon was proposing was no walk in the park. I really think he should own up and apologize to the project now.

sbergman27 Member since:
2005-07-24

Maybe everyone should just work on their own projects and drop the petty bickering and benchmark-waving. Using benchmarks, and benchmark comparisons with other projects, as tools to guide development is one thing. But using them as a way to taunt other projects is something else, and is substantially less constructive.

Reply Parent Bookmark Score: 2

PlatformAgnostic Member since:
2006-01-02

Hear! Hear!

Any benchmark of this sort is fairly useless across different systems for the simple reason that everyone has a different set of optimized cases and weak areas.

For instance, people used to use select() on UNIX and find that it performed worse on NT because NT was designed for a different approach as encompassed in the IoCompletionPort API.

Additionally, any application with highly specialized performance requirements, like a database, would probably go to great lengths to avoid paths within the host OS that are necessary in the general case but bad for the specialized application. Hence you see raw disk mode in Oracle and SQL.

I think the Linux-CFS vs. FreeBSD-ULE scheduler numbers should be taken with a grain of salt. It may just be that MySQL (or at least the benchmark) needs to be reoptimized for the new Linux scheduler to get the formerly high throughput numbers. The scheduler shouldn't matter to a well-written database because there should always be not much more than 1 work item per cpu being processed at a time.

Reply Parent Bookmark Score: 2

viniosity Member since:
2005-07-06

IIRC Matt had some harsh things to say about FreeBSD5.. which is about the time he forked (and forked from FreeBSD4). FreeBSD6/7 was more or less a departure from 5's way of SMP. So in that respect, he was pretty much right on.. it just so happens that the FreeBSD team corrected the 'mess' that was FreeBSD5 before he could get his DFly work out the door in a state that satisfies him.

In any case, all the BSD's have bright people working on their teams and, since it's all open source, we should all benefit from the different ideas eventually.

Reply Parent Bookmark Score: 2

Chreo Member since:
2005-07-06

IIRC Matt had some harsh things to say about FreeBSD5.. which is about the time he forked (and forked from FreeBSD4). FreeBSD6/7 was more or less a departure from 5's way of SMP. So in that respect, he was pretty much right on..


No, you are quite wrong. FreeBSD 5 was the first release that had the bits of SMPng. The reason FreeBSD 5 has been (quite unfairly) derailed is because SMPng simply was not fully completed as some parts were missing and not in any way focusing on performance. FreeBSD 5 (5.0 and 5.1, which BTW was NOT PRODUCTION (as in stable) releases which is often forgotten) was rather about providing a correct implementation to build upon for future releases. IIRC, what M. Dillon criticized was the basic SMP synchronization model with fine-grained locks/MUTEXES. That is something that has NOT changed and so no he was not right on. If anything, FreeBSD 7 has shown that he was wrong on the basic architecture behind SMPng. Now he himself has to prove that he was at least partly right by making sure DragonflyBSD runs just-as-well by showing that it scales properly, has decent performance (performance winning not needed, enough performance is good enough). So far that has not materialized as to many things are still missing. It sure is an interesting experiment that he has embarked upon but it nowhere near being deployed on production servers. The level entry servers today has 4 cores, most standard servers ship with 8 cores and for that you need an SMP implementation that scales, FreeBSD 7 has clearly shown that it can scale and perform.

it just so happens that the FreeBSD team corrected the 'mess' that was FreeBSD5 before he could get his DFly work out the door in a state that satisfies him.


There was no "mess" to correct. It was just a matter on refining, and optimizing and that is still ongoing so expect new advancements in performance for FreeBSD.

In any case, all the BSD's have bright people working on their teams and, since it's all open source, we should all benefit from the different ideas eventually.


Yes, they do. Just look at jemalloc, tmpfs as recent examples of BSD-licensed code that has "migrated" outside their *BSD.

Reply Parent Bookmark Score: 3

Oliver Member since:
2006-07-15

Why?

Read the interview with Matt from 2002 and you will see

http://kerneltrap.org/node/8

Maybe just politics ...

Reply Parent Bookmark Score: 2