CSC/ECE 506 Spring 2012/11a hn: Difference between revisions
Line 19: | Line 19: | ||
[[image:DSM.jpg|thumb|center|400px|alt=Distributed Memory System.|Illustration of Distributed memory system [[#References|<sup>[3]</sup>]].]] | |||
[[image:DSM.jpg|thumb|center| | |||
Revision as of 19:55, 13 April 2012
The Distributed Shared Memory (DSM) system is a combination of a Shared Memory system and a Distributed Memory systems. The Shared Memory system has a group of processors sharing global memory which allows any processor to access the memory location[1].]] The Distributed memory systems have a cluster each (i.e each processor has its own memory location ) and use message passing to communicate between the clusters[2] The DSM on the other hand has several processors sharing the same address space i.e a location in memory will be the same physical address for all processors. Unlike the Shared Memory System they do not actually use a global memory which is accessible by all processors, instead it is a logical abstraction of a single address space for different memory locations which can be accessed by all processors.
Instead of implementing shared memory model with a bus support the DSM uses a more scalable and less expensive model by supporting the abstraction of shared memory by using message passing. The main memory of a cluster of processors is made to look like a single memory with a single address space. The DSM allows the programmer to share and use variables without having to worry about their management. Hence a processor can access a address space held by other processors main memory. The DSM allows end-users to use the shared memory without knowing the message passing,the idea is to allow inter processor communication which is invisible to the user.