From wkt at tuhs.org Thu Nov 27 19:58:56 2003
From: wkt at tuhs.org (Warren Toomey)
Date: Thu Nov 27 19:59:00 2003
Subject: [TUHS] Anybody with a copy of this paper?
Message-ID: <20031127095856.GA89998@minnie.tuhs.org>

Hi all, would anybody have a copy of this paper:

Multiprocessor UNIX operating systems.
Bach, M.J., and Buroff. S.J.
Bell Systems. Tech. J. 63. 8 (Oct. 1984) 1733-1749.

If so, would you be able to scan it in and e-mail it to me, or even
photocopy it and post it to me? I'll reimburse you for time & postage.

Thanks in advance,
	Warren

From wkt at tuhs.org Fri Nov 28 07:32:07 2003
From: wkt at tuhs.org (Warren Toomey)
Date: Fri Nov 28 07:32:21 2003
Subject: [TUHS] Anybody with a copy of this paper?
In-Reply-To: <20031127095856.GA89998@minnie.tuhs.org>
References: <20031127095856.GA89998@minnie.tuhs.org>
Message-ID: <20031127213207.GA94121@minnie.tuhs.org>

On Thu, Nov 27, 2003 at 07:58:56PM +1000, Warren Toomey wrote:
> Hi all, would anybody have a copy of this paper:
> Multiprocessor UNIX operating systems.
> Bach, M.J., and Buroff. S.J.
> Bell Systems. Tech. J. 63. 8 (Oct. 1984) 1733-1749.

Thanks to Grant Maziels and Brantley Coile who have offered to scan it
in for me. Actually, I just realised that I might have this paper buried
in a pile of papers at work, so I'll dig for it when I get in this morning.

I'm trying to build up a history of the publicly available documents that
describe SMP in UNIX (i.e methods and techniques, not code), and so I'm
after papers, books, theses, seminar writeups etc. Once I've done this,
I might get the itch to do the same for other things, like NUMA or
journalling filesystems. You never know when such a history might come in
handy.

Anyway, if you know of these things are have references to published
documents, feel free to e-mail me citations, URLs, whole papers etc. :-)

Thanks all,
Warren

From Bryan.Cantrill at eng.sun.com Thu Nov 27 14:13:36 2003
From: Bryan.Cantrill at eng.sun.com (Bryan Cantrill)
Date: Fri Nov 28 08:35:57 2003
Subject: [TUHS] Anybody with a copy of this paper?
In-Reply-To: <20031127213207.GA94121@minnie.tuhs.org> from Warren Toomey at
"Nov 28, 2003 07:32:07 am"
Message-ID: <200311272213.hARMDaJA515395@jurassic.eng.sun.com>


Warren,

> On Thu, Nov 27, 2003 at 07:58:56PM +1000, Warren Toomey wrote:
> > Hi all, would anybody have a copy of this paper:
> > Multiprocessor UNIX operating systems.
> > Bach, M.J., and Buroff. S.J.
> > Bell Systems. Tech. J. 63. 8 (Oct. 1984) 1733-1749.
> 
> Thanks to Grant Maziels and Brantley Coile who have offered to scan it
> in for me. Actually, I just realised that I might have this paper buried
> in a pile of papers at work, so I'll dig for it when I get in this morning.

If it helps you find it, that BSTJ has a yellow cover, and the words
"The UNIX System" in Star Wars-esque font. (It _was_ 1984, after all.)

> I'm trying to build up a history of the publicly available documents that
> describe SMP in UNIX (i.e methods and techniques, not code), and so I'm
> after papers, books, theses, seminar writeups etc. Once I've done this,

Much of the state-of-the-art hasn't been too widely disseminated. The
know-how lives/lived in a handful of companies -- notably SGI, Sequent,
and Sun. Unfortunately, we (the industry) haven't done a good job
discussing our experiences -- and as a result there's a huge amount of
misunderstanding out there. (Usually in the form of fear-and-loathing
about the cost of synchronization primitives or complete ignorance about
the software ramifications of snoopy protocols.) 

The best book out there is definitely Curt Schimmel's "UNIX Systems for
Modern Architectures." One could almost certainly write a second volume
to this (and a third, and a fourth), but the audience is very, very small.

In terms of papers outlining somewhat more recent techniques, check out 
Bonwick and Adams, "Magazines and Vmem: Extending the Slab Allocator
to Many CPUs and Arbitrary Resources." This was presented at USENIX in
2001; see http://www.parrotcode.org/talks/vmem.pdf.

Unfortunately, we (the industry) never wrote a paper on the tools we use
to improve the scalability of UNIX. SGI and Sun both have "lockstat" tools;
you can google each. (Sun's lockstat shipped in Solaris 2.6; if you have
a Solaris box, you can man lockstat.) Presumably other vendors have tools
as well; to the best of my knowledge none of us ever described them in
a refereed paper.

And should you be interested in an arcane postmortem technique that I
developed to find false-sharing, see Cantrill, "Postmortem Object Type 
Identification." I presented this at AADEBUG 2003; it can be found at
http://arxiv.org/pdf/cs.SE/0309037.

It will be interesting to hear about what else you find...

- Bryan

----------------------------------------------------------------------------
Bryan Cantrill, Solaris Kernel Development. bmc@eng.sun.com (650) 786-3652

From dmr at plan9.bell-labs.com Fri Nov 28 02:36:17 2003
From: dmr at plan9.bell-labs.com (Dennis Ritchie)
Date: Fri Nov 28 17:36:44 2003
Subject: [TUHS] Re: Anybody with a copy of this paper?
Message-ID: <53bc77224fac72021ff9cb8b9b0a5232@plan9.bell-labs.com>

I see that Maziels and Coile have already offered
to scan (or copy) the Bach & Buroff paper. I have
it too, just haven't scanned it.

The original requester should also try to find
the even earlier work on Unix multiprocessing:

Hawley, J. A., Meyer, W. D. (1975) MUNIX: A Multiprocessing Version of UNIX,
MoS. Thesis, Naval Postgraduate School - Monterey. June.

Goble, G.H. and M.H.Marsh, "A Dual Processor VAX 11/780",
Purdue University Technical Report, TR-EE 81-31, Sept. 1981. 

This used to be at

http://ghg.ecn.purdue.edu/vax/paper.html

but for some reason Goble's pages have been
withdrawn. Probably it's at www.archive.org,
but that seems unavailable just now.

	Dennis