Further expand/update SMPng text:

- Mention KSE 1:1 and M:N threading as occuring in parallel, allowing
  applications to take advantage of parallelism.

- Mention WITNESS.

- Put in a specific recognition of BSD/OS-BSDi contributions early in the
  project.

- Since a lot of the development work is done, focus less on the project
  management approach (especially since things have diverged a lot from
  what was discussed).

- Point at the Netperf cluster.
This commit is contained in:
Robert Watson 2005-07-01 11:40:07 +00:00
parent 55d1820850
commit 22c8dda348
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/www/; revision=24995

View file

@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" [
<!ENTITY base CDATA "..">
<!ENTITY date "$FreeBSD: www/en/smp/index.sgml,v 1.141 2005/04/05 20:47:58 jcamou Exp $">
<!ENTITY date "$FreeBSD: www/en/smp/index.sgml,v 1.142 2005/07/01 11:32:56 rwatson Exp $">
<!ENTITY title "FreeBSD SMP Project">
<!ENTITY email 'freebsd-smp'>
<!ENTITY % includes SYSTEM "../includes.sgml"> %includes;
@ -79,6 +79,8 @@
and also from additional inter-process communication primitives.
The SMP-aware kernel slab allocator is now used almost universally, and
the focus has changed from "make it work", to "optimize it!".
Simultaneous work on KSE 1:1 and M:N threading has also allowed
applications to take advantage of new kernel parallelism.
The FreeBSD 5.3 kernel introduced Giant-free network stack execution
for most relevant code paths, and the FreeBSD 6.x kernel introduces
MPSAFE VFS, as well as wide-spread performance optimization.</p>
@ -91,25 +93,24 @@
which build on and refine the SMPng architecture: the introduction of
features such as the kernel trace facility (KTR), hardware performance
monitor counters (hwpmc), lock profiling, and improved memory
monitoring play important roles in this process. Other important
debugging and testing facilities include WITNESS, a run-time kernel
lock order verifier, and wide-spread use of lock assertions and
run-time invariants testing.</p>
monitoring play important roles in this process.
Other important debugging and testing facilities include WITNESS, a
run-time kernel lock order verifier, and wide-spread use of lock
assertions and run-time invariants testing.</p>
<p>The FreeBSD Project recognizes, in particular, the contributions of
the BSD/OS development team, including architectural direction and
suggestions, as well as for initial locking strategies for some system
components, and source code for some of the starting primitives, not to
mention BSDI's contributions in staffing and resources for early parts
of this project.</p>
<a name="plan"></a>
<h2>Project Plan</h2>
<p>This web page contains information related to the effort to
improve SMP support in FreeBSD. In general, this project uses
what it can from the BSD/OS 5.0 development kernel, and
re-implements what cannot be directly used due to divergence in
the code bases.</p>
<p>As with any free software project, a detailed schedule is not
possible. We expect to have significant performance and
stability issues that need to be worked through over the first
several months of the project, though every effort will be made
to keep -current running as well as possible.</p>
<p>This web page contains information relating to the SMPng effort;
because of the large amount of work and rapid pace of development,
it can fall a bit behind reality.</p>
<p>The task list below is not intended to be complete, but does
represent a set of relevant and/or important components of the
@ -131,13 +132,15 @@
new tasks, it refers to the date the task was added to the list.</p>
<p>Locking down of individual device drivers is tracked at
<a href="http://www.FreeBSD.org/projects/busdma">the busdma and
<a href="http://www.FreeBSD.org/projects/busdma/">the busdma and
SMPng driver conversion webpage</a>.</p>
<p>Network stack locking information is available at Robert Watson's
<a href="http://www.watson.org/~robert/freebsd/netperf/">netperf web
page</a> and the FreeBSD.org <a href="../projects/netperf/">Netperf
web page</a>.</p>
web page</a>.
An SMP <a href="../projects/netperf/cluster.html">network performance
cluster</a> has also been created for the purposes of testing.</p>
<p>Tasks are sorted first by status, then by date.</p>