Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!unmvax!pprg.unm.edu!hc!lll-winken!maddog!brooks From: brooks@maddog.llnl.gov (Eugene Brooks) Newsgroups: comp.arch Subject: Re: i860 CPU information Keywords: i860 N10 Message-ID: <21923@lll-winken.LLNL.GOV> Date: 14 Mar 89 18:15:24 GMT References: <1895@oakhill.UUCP> <21570@shemp.CS.UCLA.EDU> <3024@alliant.Alliant.COM> Sender: usenet@lll-winken.LLNL.GOV Reply-To: brooks@maddog.llnl.gov (Eugene Brooks) Distribution: usa Organization: Lawrence Livermore National Laboratory Lines: 34 In article <3024@alliant.Alliant.COM> jeff@alliant.Alliant.COM (Jeff Collins) writes: > Which policies are these? How does one share memory in a > multiprocessor when you can't have external bus watchers? > Actually never mind that, how do you switch a process from one > processor to another (I don't count flushing the D-cache on > each context switch as a viable answer)? Although you don't count flushing the D-cache as a viable answer, for large scalable multiprocessor systems such a solution is indeed viable. In particular, if you are not talking about a bus architecture at all where snooing is not very easy to do, write-through caches which use the volatile keyword in C as a mechanism to force a cache miss on a read are quite useful. Non-bus systems don't have a memory bandwidth problem, they generally have a memory latency problem. The write-through cache can be tolerated because the needed bandwidth is available and the cache flush is quick because cache lines only need to be forgotten, not written to memory. A single instruction could nail the whole cache. This is of course somewhat of a tangent to the issue for the i860. The i860's cache is not write-through with explicit user code management of the cache lines so it does not fit in the "non-bus" scheme mentioned above very well, and the current on chip cache does not have a coherence strategy useful for bus based shared memory multiprocessors (other than to keep shared data out of the on chip cache). For such a small on chip cache the "flush the cache on a context switch" is not really much of an issue. I suspect that you have to do this anyway for a single cpu machine as the cache is a virtual memory cache. Is the news software incompatible with your mailer too? brooks@maddog.llnl.gov, brooks@maddog.uucp, uunet!maddog.llnl.gov!brooks