tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: revivesa status 2008/07/09

Andrew Doran <> wrote:
> It has to be said, I have not seen a convincing explanation as to why this
> is desirable or in the best interests of NetBSD as a product.
> SA threading in NetBSD has serious problems and drawbacks. For example:
> - it works only on a handful of architectures, eg x86.
> - in most tests its performance is demonstrably inferior to 1:1.
> - it's completely unreliable, even opening the machine to DOS attacks.
> - it has architectural, code quality and code maintenance issues.
> - it completely lacks any kind of real-time support.
> In its current form SA threading is a regressive proposition. Even if all
> the remaining issues are addressed, what benefits would it bring over and
> above 1:1 threading?

With all respect to Bill's work and his good ideas - he really improved SA
lot, and put a lot of effort on this - I fully agree with Andrew. Besides:

 - SA increases code complexity a lot (in our threading subsystem);
 - does not support thread affinity features;
 - have not seen that performance of SA is better than 1:1 even on very
   CPU-bound workload;

Also, I believe SA might be potential security problem (over-complicated code
tends to be breakable - consider a lot of threads with continual blocking).
That is why I suggested to make SA at least a kernel option. My suggestion to
make SA a kernel option was exactly because of that. This also would reduce
the modifications to the existing threading subsystem.

Best regards,

Home | Main Index | Thread Index | Old Index