My wish list for 6.1

Robert Watson rwatson at FreeBSD.org
Fri Dec 30 23:12:29 PST 2005


On Fri, 16 Dec 2005, Avleen Vig wrote:

> On Fri, Dec 16, 2005 at 10:40:22AM -0500, Martin Cracauer wrote:
>>> 2.  SMP kernels for install.  Right now we only install a UP kernel, for
>>> performance reasons.  We should be able to package both a UP and SMP
>>> kernel into the release bits, and have sysinstall install both.  It
>>> should also select the correct one for the target system and make that
>>> the default on boot.
>>
>> If people are concerned about performance, I benchmarked a 6-beta kernel 
>> SMP versus UP on a socket 939 Opteron.
>
> If those results are accurate, there's no real reason not to just use an SMP 
> kernel on default install?

This is an old thread that I'm just catching up on, but I figured I'd chime in 
anyway: you have to be really careful benchmarking across CPU types and 
configurations, as the performance characteristics of important insturctions 
differ a lot across hardware variations.  For example, the performance of 
atomic operations, used to synchronize between CPUs, varies significantly by 
CP, bus configuration, etc.  On modern opteron hardware, the performance of 
inter-CPU synchronization instructions is blindingly fast.  On modern Xeon P4 
hardware, it is incredibly slow.  Software optimized for the Opteron will 
often perform much slower on Xeon P4 hardware as a result.  P3 hardware tends 
to behave a lot more like Opteron in terms of speed of insturctions relating 
to disabling interrupts, where on P4 Xeon they are proprtionally much slower. 
The critical section optimizations made by John Baldwin, and the movement to 
critical sections in UMA and kernel malloc that I made, made a big performance 
difference on Xeon P4 hardware, but relatively little difference on Opteron. 
All this seems to suggest that when comparing UP and SMP, it's useful to do it 
on nice opteron hardware, but also on P4 Xeon to prevent making decisions 
based on platform-specific properties.

Robert N M Watson


More information about the freebsd-hackers mailing list