Re: a (radical ?) alternative to current chapter 4

Eric Salo (salo@mrjones.engr.sgi.com)
Tue, 9 Jul 1996 12:12:09 -0700

> ********
> If the cocnurrent PUTs do not update the same location in the window then
one
> can use a shared lock for the puts, rather than an exclusive lock. So, all
> puts can go one concurrently.
> ********

This is a bit confusing. The current text of the alternate proposal uses "read"
and "write" to describe the two different types of lock, since this is what
they will typically be used for. It may or may not be more correct/clear to
label them as "shared" and "exclusive" locks instead, but that's just a naming
issue.

My understanding is that allowing multiple processes to PUT into the same
window at the same time might not be legal in the alternate proposal because
that might mess up cache coherency on some systems. At least, it feels fishy to
me because it does seem to violate the reason for needing the locks in the
first place. Can someone (Marc? Raja?) come up with a compelling reason why
this should or should not cause problems?

On the other hand, it's not clear that the concept of windows is even helpful
for the general coherency problem, because from a hardware perspective one does
not typically perform coherence operations on distinct memory regions; one
flushes/invalidates an entire cache, or perhaps an individual line. So we might
be in trouble anyway, but again I don't have a concrete example (yet).

-- 
Eric Salo         Silicon Graphics Inc.             "Do you know what the
(415)933-2998     2011 N. Shoreline Blvd, 8U-808     last Xon said, just
salo@sgi.com      Mountain View, CA   94043-1389     before he died?"