Path: utzoo!mnetor!uunet!husc6!bbn!rochester!crowl From: crowl@cs.rochester.edu (Lawrence Crowl) Newsgroups: comp.arch Subject: Is Shared Memory Necessary? Message-ID: <9559@sol.ARPA> Date: 10 May 88 14:32:36 GMT References: <503@xios.XIOS.UUCP> <2676@pdn.UUCP> <674@cernvax.UUCP> Reply-To: crowl@cs.rochester.edu (Lawrence Crowl) Organization: U of Rochester, CS Dept, Rochester, NY Lines: 27 In article <674@cernvax.UUCP> hjm@cernvax.UUCP (Hubert Matthews) writes: >... Everyones favourite trick seems to be finding evermore complicated ways of >getting large numbers of CPUs to talk to the memory all at once. Just imagine >an ever increasing number of waiters trying to get in and out of the same >kitchen all at once through one door, and you can see the mess. OK, let's >increase the number of doors ... in hardware terms this means separating the >memory into several pages which can be accessed simultaneously, thereby >increasing the effective bandwidth of the memory. Is this really admitting >that shared memory is not necessary? Surely the highest bandwidth is achieved >when each processor has its own memory which it shares with noone else? It >also makes the hardware a lot smaller. ... shared-memory is not necessary; >it's a software issue that shouldn't be solved in hardware. Yes, the highest bandwidth is achieved when when each processor has exclusive memory. However, processes on different processors must still communicate with each other. Non-shared memory communication typically costs two orders of magnitude more than shared memory communication. What's worse, even when processes are on the same processor, software engineering issues often require that they communicate via the same slow inter-processor mechanism. So the fastest time to solve a problem may well lie with shared memory even though its bandwidth is lower. Communication is a software issue. Making it cheap requires hardware. My conclusion is that shared-memory is not necessary, but that it is worth its cost. -- Lawrence Crowl 716-275-9499 University of Rochester crowl@cs.rochester.edu Computer Science Department ...!{allegra,decvax,rutgers}!rochester!crowl Rochester, New York, 14627